@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Quicksand:wght@600;700&display=swap");.little-zoo-wooden-sign{background-color:#f2e8cf;border:2px solid #6b4226;border-radius:12px;padding-top:1.5rem;position:relative}.little-zoo-wooden-sign-section+.little-zoo-wooden-sign-section{margin-top:1rem}.little-zoo-wooden-sign:before{left:20%}.little-zoo-wooden-sign:after,.little-zoo-wooden-sign:before{background-color:#6b4226;border-radius:4px;content:"";height:20px;position:absolute;top:-20px;width:8px}.little-zoo-wooden-sign:after{right:20%}.little-zoo-leaf-drift-layer{animation:little-zoo-drift 10s linear infinite;opacity:.6;pointer-events:none}@keyframes little-zoo-drift{0%{transform:translateY(-10vh) rotate(0deg)}to{transform:translateY(110vh) rotate(1turn)}}.little-zoo-ticket-btn{background-color:#ffab69;clip-path:polygon(10% 0,100% 0,100% 20%,95% 25%,100% 30%,100% 70%,95% 75%,100% 80%,100% 100%,10% 100%,0 90%,5% 85%,0 80%,0 20%,5% 15%,0 10%);color:#783d01}.little-zoo-passport-stamp-btn{background-color:#a7c957;border:2px dashed #6b4226;color:#3d5300}.little-zoo-paw-print{opacity:0;transition:opacity .5s ease-in}.little-zoo-paw-print.little-zoo-paw-visible{opacity:.3}.little-zoo-ticket-bg-card{background-position:50%;background-size:cover;border-radius:.75rem;box-shadow:0 8px 30px rgba(107,66,38,.12);height:12rem}.little-zoo-clipboard{background-color:#f5deb3;border:1px solid #d2b48c;border-radius:.375rem;position:relative}.little-zoo-clipboard-clip{align-items:center;background-color:#9ca3af;border:2px solid #4b5563;border-radius:.125rem;display:flex;height:2rem;justify-content:center;left:50%;position:absolute;top:-15px;transform:translateX(-50%);width:6rem}.little-zoo-clipboard-clip-bar{background-color:#4b5563;border-radius:9999px;height:.5rem;width:3rem}.little-zoo-exhibit-circle{align-items:center;background-color:#fff8f5;border-radius:9999px;box-shadow:inset 0 2px 4px rgba(107,66,38,.08);display:flex;height:8rem;justify-content:center;margin-left:auto;margin-right:auto;overflow:hidden;width:8rem}.little-zoo-section-heading-dash{border-bottom:4px dashed #ffab69;display:inline-block;padding-bottom:.5rem}.little-zoo-sticky-bar{animation:little-zoo-sticky-slide .35s ease-out;background-color:#ffdbc7;border-top:2px dashed #c5c9b4;box-shadow:0 -8px 30px rgba(107,66,38,.12)}.little-zoo-sticky-rsvp-btn{align-items:center;background-color:#ffab69;border-radius:9999px;color:#783d01;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;letter-spacing:.05em;padding:.5rem 1.5rem;text-transform:uppercase}.little-zoo-texture-bg{background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100' height='100' filter='url(%23noise)' opacity='0.05'/%3E%3C/svg%3E")}.little-zoo-ticket-edge{background-image:radial-gradient(circle at top left,transparent 8px,#f2e8cf 9px),radial-gradient(circle at top right,transparent 8px,#f2e8cf 9px),radial-gradient(circle at bottom left,transparent 8px,#f2e8cf 9px),radial-gradient(circle at bottom right,transparent 8px,#f2e8cf 9px);background-position:0 0,100% 0,0 100%,100% 100%;background-repeat:no-repeat;background-size:51% 51%}.little-zoo-stamp-btn{border:2px dashed #6b4226;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.little-zoo-stamp-btn.little-zoo-stamped{background-color:#8e4e14;border-style:solid;box-shadow:inset 0 4px 10px rgba(0,0,0,.3);color:#ffffff;transform:scale(.95) rotate(-3deg)}.little-zoo-input-safari{background-color:#fffaf0;border:2px solid #6b4226}.little-zoo-input-safari:focus{border-color:#a7c957;box-shadow:0 0 0 3px rgba(167,201,87,.3);outline:none}.little-zoo-wood-post-top{position:relative}.little-zoo-wood-post-top:before{background-color:#6b4226;border-radius:4px;content:"";height:6px;left:50%;position:absolute;top:-10px;transform:translateX(-50%);width:40%}.little-zoo-perforation{background-image:linear-gradient(90deg,transparent 50%,#6b4226 0);background-size:10px 2px;height:2px;width:100%}.little-zoo-rsvp-form input:not([type=hidden]),.little-zoo-rsvp-form select,.little-zoo-rsvp-form textarea{background-color:#fffaf0!important;border:2px solid #6b4226!important;border-radius:.75rem!important}.little-zoo-rsvp-form input:not([type=hidden]):focus,.little-zoo-rsvp-form select:focus,.little-zoo-rsvp-form textarea:focus{border-color:#a7c957!important;box-shadow:0 0 0 3px rgba(167,201,87,.3)!important;outline:none!important}.little-zoo-rsvp-form button[type=submit]{background-color:#a7c957!important;border:2px dashed #6b4226!important;border-radius:9999px!important;color:#3d5300!important;font-family:"Quicksand",var(--font-inter),system-ui,sans-serif!important;font-size:1.125rem!important;font-weight:600!important;min-width:250px;padding:1rem 2rem!important}.little-zoo-polaroid{background:#ffffff;border-radius:2px;box-shadow:0 8px 30px rgba(107,66,38,.12);padding:.75rem .75rem 2rem}.little-zoo-gallery-polaroid-strip{-ms-overflow-style:none;display:flex;gap:1.5rem;overflow-x:auto;padding-bottom:1rem;padding-top:.5rem;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.little-zoo-gallery-polaroid-strip::-webkit-scrollbar{display:none}.little-zoo-gallery-polaroid-strip>figure{flex:0 0 12rem;scroll-snap-align:start}.little-zoo-gallery-band{border-bottom:1px solid rgba(197,201,180,.3);border-top:1px solid rgba(197,201,180,.3);box-shadow:inset 0 2px 8px rgba(107,66,38,.06);margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem}@media (min-width:768px){.little-zoo-gallery-band{margin-left:-5rem;margin-right:-5rem;padding-left:5rem;padding-right:5rem}.little-zoo-gallery-polaroid-strip{display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.little-zoo-gallery-polaroid-strip>figure{flex:unset}}.little-zoo-leaf-drift-container{bottom:5rem;left:0;overflow:hidden;pointer-events:none;position:fixed;right:0;top:0;z-index:0}.little-zoo-trail-path{overflow:hidden;position:relative}.little-zoo-main-trail{margin-left:auto;margin-right:auto;max-width:1200px;padding:3rem 1.5rem 8rem;position:relative}@media (min-width:768px){.little-zoo-main-trail{padding-left:5rem;padding-right:5rem}}.little-zoo-shell{background-color:#fff8f5;color:#311300;font-family:var(--font-inter),system-ui,sans-serif}.little-zoo-atmosphere{background-color:#fff8f5;background-image:radial-gradient(ellipse 55% 40% at 8% 6%,rgba(167,201,87,.14),transparent 55%),radial-gradient(ellipse 45% 35% at 92% 10%,rgba(168,218,220,.12),transparent 50%),radial-gradient(ellipse 40% 30% at 50% 100%,rgba(244,162,97,.08),transparent 55%)}.little-zoo-display{font-family:"Quicksand",var(--font-inter),system-ui,sans-serif}.little-zoo-label{font-family:"Plus Jakarta Sans",var(--font-inter),system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}.little-zoo-gutter{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:1140px;min-width:0;padding-left:1rem;padding-right:1rem;width:100%}.little-zoo-card-shadow{box-shadow:0 4px 20px rgba(107,66,38,.08)}.little-zoo-card-shadow-lg{box-shadow:0 8px 30px rgba(107,66,38,.12)}.little-zoo-section-band{position:relative;width:100%}.little-zoo-section-cream{background-color:#fff8f5}.little-zoo-section-sand{background-color:#f2e8cf}.little-zoo-section-sage{background-color:#eef5df}.little-zoo-section-sky{background-color:#e8f4f5}.little-zoo-section-warm{background-color:#ffeadf}.little-zoo-trail-line{background-image:radial-gradient(circle,#6b4226 2px,transparent 2.5px);background-size:18px 28px;background-position:top;opacity:.35;width:4px}.little-zoo-ticket-notch{position:relative}.little-zoo-ticket-notch:after,.little-zoo-ticket-notch:before{background:#fff8f5;border-radius:9999px;content:"";height:14px;position:absolute;top:50%;transform:translateY(-50%);width:14px}.little-zoo-ticket-notch:before{left:-7px}.little-zoo-ticket-notch:after{right:-7px}.little-zoo-exhibit-board{background:#f2e8cf;border:2px solid #6b4226;border-radius:1.5rem;position:relative}.little-zoo-exhibit-board:before{background:#6b4226;border-radius:9999px;content:"";height:10px;left:50%;position:absolute;top:-6px;transform:translateX(-50%);width:10px}.little-zoo-passport-stamp{border:2px dashed #4d6700;border-radius:9999px;transition:transform .2s ease,box-shadow .2s ease}.little-zoo-passport-stamp:hover{box-shadow:0 6px 20px rgba(77,103,0,.2);transform:scale(1.02)}.little-zoo-passport-stamp:active{box-shadow:inset 0 2px 6px rgba(107,66,38,.15);transform:scale(.98)}.little-zoo-gate-reveal{animation:little-zoo-gate-reveal .9s ease-out both}.little-zoo-photo-reveal{animation:little-zoo-photo-reveal .8s ease-out .2s both}.little-zoo-leaf-drift{animation:little-zoo-leaf-drift 8s ease-in-out infinite}.little-zoo-paw-walk{animation:little-zoo-paw-walk 2.4s ease-in-out infinite}.little-zoo-exhibit-reveal{animation:little-zoo-exhibit-reveal .7s ease-out both}.little-zoo-gallery-frame{transition:transform .25s ease,box-shadow .25s ease}.little-zoo-gallery-frame:hover{box-shadow:0 10px 28px rgba(107,66,38,.16);transform:rotate(0deg) translateY(-4px) scale(1.02)}.little-zoo-sticky-tab{animation:little-zoo-sticky-slide .35s ease-out}.little-zoo-success-burst .little-zoo-confetti-piece{animation:little-zoo-confetti-fall 1.4s ease-out both}.little-zoo-map-board{background-color:#e8f4f5;background-image:linear-gradient(rgba(107,66,38,.06) 1px,transparent 0),linear-gradient(90deg,rgba(107,66,38,.06) 1px,transparent 0);background-size:24px 24px;border:3px solid #6b4226;border-radius:1.5rem}.little-zoo-gallery-strip{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.little-zoo-gallery-strip>figure{flex:0 0 min(72vw,220px);scroll-snap-align:start}.little-zoo-rsvp-pass{background:linear-gradient(180deg,#fff8f5,#f2e8cf);border:3px dashed #6b4226;border-radius:1.5rem}.little-zoo-entry-plaza{background-image:radial-gradient(ellipse 70% 50% at 50% 0,rgba(167,201,87,.18),transparent 60%),linear-gradient(180deg,#fff8f5,#f2e8cf)}.little-zoo-fence-pattern{background-image:repeating-linear-gradient(90deg,transparent,transparent 18px,rgba(107,66,38,.25) 0,rgba(107,66,38,.25) 20px);background-size:40px 100%}.little-zoo-ticket-booth:after{background:#6b4226;border-radius:4px;bottom:-10px;content:"";height:14px;left:50%;position:absolute;transform:translateX(-50%);width:6px}.little-zoo-ticket-counter-booth{box-shadow:inset 0 2px 8px rgba(107,66,38,.08),0 6px 24px rgba(107,66,38,.1)}.little-zoo-flip-digit{transition:transform .35s ease}.little-zoo-animal-peek{animation:little-zoo-animal-peek 4s ease-in-out infinite}.little-zoo-tram-drift{animation:little-zoo-tram-drift 6s ease-in-out infinite}.little-zoo-pond-ripple{background:linear-gradient(180deg,transparent,rgba(168,218,220,.45))}.little-zoo-photo-tape{background:rgba(249,220,92,.75);border-radius:2px;box-shadow:0 1px 2px rgba(107,66,38,.15)}.little-zoo-memory-pin:before{background:#6b4226;border-radius:9999px;content:"";height:8px;left:50%;position:absolute;top:6px;transform:translateX(-50%);width:8px;z-index:10}.little-zoo-exhibit-stop{transition:transform .25s ease}.little-zoo-exhibit-stop:hover{transform:translateY(-3px)}.little-zoo-visitor-clipboard{background-image:linear-gradient(180deg,#ffffff,#fff8f5)}.little-zoo-exit-gate{background-image:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(167,201,87,.2),transparent 70%)}@keyframes little-zoo-gate-reveal{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes little-zoo-photo-reveal{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes little-zoo-leaf-drift{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(6deg)}}@keyframes little-zoo-paw-walk{0%,to{opacity:.35;transform:translateX(0)}50%{opacity:.7;transform:translateX(6px)}}@keyframes little-zoo-exhibit-reveal{0%{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}@keyframes little-zoo-sticky-slide{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes little-zoo-animal-peek{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-6px) rotate(3deg)}}@keyframes little-zoo-tram-drift{0%,to{transform:translateX(0)}50%{transform:translateX(8px)}}@keyframes little-zoo-confetti-fall{0%{opacity:1;transform:translateY(0) rotate(0deg)}to{opacity:0;transform:translateY(48px) rotate(180deg)}}@media (prefers-reduced-motion:reduce){.little-zoo-animal-peek,.little-zoo-exhibit-reveal,.little-zoo-gate-reveal,.little-zoo-leaf-drift,.little-zoo-leaf-drift-layer,.little-zoo-paw-walk,.little-zoo-photo-reveal,.little-zoo-sticky-bar,.little-zoo-sticky-tab,.little-zoo-success-burst .little-zoo-confetti-piece,.little-zoo-tram-drift{animation:none!important}.little-zoo-exhibit-stop:hover{transform:none!important}.little-zoo-gallery-frame{transition:none!important}.little-zoo-gallery-frame:hover,.little-zoo-passport-stamp:active,.little-zoo-passport-stamp:hover{transform:none!important}}.carnival-wonder-shell{background-color:#fff8f7;color:#271717;font-family:var(--font-inter),system-ui,sans-serif}.carnival-wonder-atmosphere{background-color:#fff8f7;background-image:radial-gradient(ellipse 55% 40% at 12% 6%,rgba(230,57,70,.1),transparent 55%),radial-gradient(ellipse 50% 35% at 88% 10%,rgba(212,175,55,.12),transparent 52%),radial-gradient(ellipse 60% 45% at 50% 100%,rgba(0,104,96,.08),transparent 60%)}.carnival-wonder-display{font-family:"Playfair Display",var(--font-inter),Georgia,serif}.carnival-wonder-label{font-family:"Montserrat",var(--font-inter),system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}.carnival-wonder-gutter{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:1140px;min-width:0;padding-left:1rem;padding-right:1rem;width:100%}@media (min-width:640px){.carnival-wonder-gutter{padding-left:1.5rem;padding-right:1.5rem}}.carnival-wonder-section-band{position:relative;width:100%}.carnival-wonder-section-cream{background-color:#fff8f7}.carnival-wonder-section-warm{background-color:#fff0ef}.carnival-wonder-section-mint{background-color:#eafaf6}.carnival-wonder-section-sky{background-color:#eef7fb}.carnival-wonder-section-gold{background-color:#fffaf0;background-image:repeating-linear-gradient(90deg,rgba(212,175,55,.08) 0 2px,transparent 2px 22px)}.carnival-wonder-card-shadow{box-shadow:5px 5px 0 rgba(39,23,23,.16)}.carnival-wonder-ticket-btn{border:2px solid #271717;box-shadow:0 4px 0 #271717;transition:transform .15s ease,box-shadow .15s ease}.carnival-wonder-ticket-btn:hover{transform:translateY(1px);box-shadow:0 3px 0 #271717}.carnival-wonder-ticket-btn:active{transform:translateY(3px);box-shadow:0 1px 0 #271717}.carnival-wonder-sticky-tab{border-top:3px solid #e63946}.carnival-wonder-ticket-card{background:#ffffff;border:3px solid #e63946;border-radius:1.5rem;box-shadow:6px 6px 0 rgba(230,57,70,.18);position:relative}.carnival-wonder-ticket-card:after,.carnival-wonder-ticket-card:before{background:#fff8f7;border:3px solid #e63946;border-radius:9999px;content:"";height:24px;position:absolute;top:50%;transform:translateY(-50%);width:24px}.carnival-wonder-ticket-card:before{left:-15px}.carnival-wonder-ticket-card:after{right:-15px}.carnival-wonder-work-card{background:#ffffff;border:2px solid #e4bebc;border-radius:1rem;transition:transform .25s ease}.carnival-wonder-work-card:hover{transform:translateY(-4px)}.carnival-wonder-photo-frame{transition:transform .25s ease}.carnival-wonder-photo-frame:hover{transform:rotate(0deg) scale(1.03) translateY(-4px)}.carnival-wonder-gallery-strip{-ms-overflow-style:none;display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory;scrollbar-width:none}.carnival-wonder-gallery-strip::-webkit-scrollbar{display:none}.carnival-wonder-gallery-strip>figure{flex:0 0 min(72vw,220px);scroll-snap-align:start}.carnival-wonder-gate-reveal{animation:carnival-wonder-gate-reveal .8s ease both}@keyframes carnival-wonder-gate-reveal{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.carnival-wonder-reveal{animation:carnival-wonder-reveal .6s ease both}@keyframes carnival-wonder-reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.carnival-wonder-balloon-float{animation:carnival-wonder-balloon-float 5s ease-in-out infinite}@keyframes carnival-wonder-balloon-float{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(2deg)}}.carnival-wonder-bunting-sway{animation:carnival-wonder-bunting-sway 6s ease-in-out infinite;transform-origin:top center}@keyframes carnival-wonder-bunting-sway{0%,to{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg)}}.carnival-wonder-marquee-pulse circle{animation:carnival-wonder-marquee-pulse 1.6s ease-in-out infinite}.carnival-wonder-marquee-pulse circle:nth-child(2n){animation-delay:.8s}@keyframes carnival-wonder-marquee-pulse{0%,to{opacity:1}50%{opacity:.4}}.carnival-wonder-spin{animation:carnival-wonder-spin 14s linear infinite;transform-origin:50% 44%}@keyframes carnival-wonder-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.carnival-wonder-confetti-drift{animation:carnival-wonder-confetti-drift 7s ease-in-out infinite}@keyframes carnival-wonder-confetti-drift{0%,to{opacity:.55;transform:translateY(0)}50%{opacity:.9;transform:translateY(-8px)}}.carnival-wonder-blink{animation:carnival-wonder-blink 1.4s step-end infinite}@keyframes carnival-wonder-blink{0%,70%{opacity:1}71%,to{opacity:.35}}.carnival-wonder-success-burst span{animation:carnival-wonder-stamp .6s ease both;display:inline-block}.carnival-wonder-success-burst span:nth-child(2){animation-delay:.08s}.carnival-wonder-success-burst span:nth-child(3){animation-delay:.16s}.carnival-wonder-success-burst span:nth-child(4){animation-delay:.24s}@keyframes carnival-wonder-stamp{0%{opacity:0;transform:scale(1.6) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}@media (prefers-reduced-motion:reduce){.carnival-wonder-balloon-float,.carnival-wonder-blink,.carnival-wonder-bunting-sway,.carnival-wonder-confetti-drift,.carnival-wonder-gate-reveal,.carnival-wonder-marquee-pulse circle,.carnival-wonder-reveal,.carnival-wonder-spin,.carnival-wonder-success-burst span{animation:none!important;transition:none!important}.carnival-wonder-photo-frame:hover,.carnival-wonder-work-card:hover{transform:none}}@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;0,800;1,600&family=Montserrat:wght@500;600;700;800&display=swap");.envelope-reveal-shell{background-color:#fffdf9;color:#3a2a26;font-family:var(--font-inter),system-ui,sans-serif}.envelope-reveal-atmosphere{background-color:#fffdf9;background-image:radial-gradient(ellipse 55% 40% at 14% 4%,rgba(198,154,52,.1),transparent 55%),radial-gradient(ellipse 52% 36% at 86% 8%,rgba(224,138,104,.1),transparent 52%),radial-gradient(ellipse 60% 45% at 50% 100%,rgba(159,201,214,.1),transparent 60%)}.envelope-reveal-display{font-family:"Playfair Display",var(--font-inter),Georgia,serif}.envelope-reveal-label{font-family:"Montserrat",var(--font-inter),system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}.envelope-reveal-gutter{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:1140px;min-width:0;padding-left:1.25rem;padding-right:1.25rem;width:100%}@media (min-width:640px){.envelope-reveal-gutter{padding-left:2rem;padding-right:2rem}}.envelope-reveal-section-band{position:relative;width:100%}.envelope-reveal-section-ivory{background-color:#fffdf9}.envelope-reveal-section-blush{background-color:#fdf4f1}.envelope-reveal-section-powder{background-color:#eef6f8}.envelope-reveal-section-mint{background-color:#eef7f1}.envelope-reveal-section-gold{background-color:#fdf8ee;background-image:repeating-linear-gradient(90deg,rgba(198,154,52,.06) 0 2px,transparent 2px 24px)}.envelope-reveal-card-shadow{box-shadow:0 18px 40px -22px rgba(58,42,38,.5)}.envelope-reveal-paper-card{background:#ffffff;border:1px solid #ead9cf;border-radius:1.5rem;box-shadow:0 18px 44px -24px rgba(58,42,38,.45);position:relative}.envelope-reveal-insert{background:#ffffff;border:1px solid #ead9cf;border-radius:1.25rem;box-shadow:0 14px 34px -22px rgba(58,42,38,.42);position:relative;transition:transform .25s ease,box-shadow .25s ease}.envelope-reveal-insert:after{content:"";position:absolute;inset:6px;border-radius:.95rem;border:1px solid rgba(198,154,52,.28);pointer-events:none}.envelope-reveal-insert:hover{transform:translateY(-4px);box-shadow:0 22px 44px -22px rgba(58,42,38,.5)}.envelope-reveal-gold-btn{border:1px solid #a37f24;background:linear-gradient(180deg,#e6c766,#c69a34);color:#3a2a26;box-shadow:0 10px 22px -12px rgba(166,127,36,.9);transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}.envelope-reveal-gold-btn:hover{transform:translateY(-2px);filter:brightness(1.03);box-shadow:0 14px 26px -12px rgba(166,127,36,.95)}.envelope-reveal-gold-btn:active{transform:translateY(0);box-shadow:0 6px 14px -10px rgba(166,127,36,.9)}.envelope-reveal-outline-btn{border:1px solid #c69a34;background:#fffdf9;color:#3a2a26;transition:transform .15s ease,background .15s ease}.envelope-reveal-outline-btn:hover{transform:translateY(-2px);background:#fdf4f1}.envelope-reveal-sticky-tab{border-top:2px solid #c69a34;box-shadow:0 -12px 30px -18px rgba(58,42,38,.5)}.envelope-reveal-photo-frame{transition:transform .25s ease,box-shadow .25s ease}.envelope-reveal-photo-frame:hover{transform:rotate(0deg) scale(1.03) translateY(-4px)}.envelope-reveal-gallery-strip{-ms-overflow-style:none;display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory;scrollbar-width:none}.envelope-reveal-gallery-strip::-webkit-scrollbar{display:none}.envelope-reveal-gallery-strip>figure{flex:0 0 min(72vw,220px);scroll-snap-align:start}.envelope-reveal-intro{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:1.5rem;background-color:#fffdf9;background-image:radial-gradient(ellipse 60% 45% at 50% 38%,rgba(230,199,102,.28),transparent 60%),radial-gradient(ellipse 70% 55% at 50% 100%,rgba(159,201,214,.14),transparent 65%);transition:opacity .6s ease,visibility .6s ease}.envelope-reveal-intro.is-dismissed{opacity:0;visibility:hidden;pointer-events:none}.envelope-reveal-scene{position:relative;width:min(86vw,360px);aspect-ratio:360/260;perspective:1200px}.envelope-reveal-scene>.envelope-reveal-layer{position:absolute;inset:0;width:100%;height:100%}.envelope-reveal-glow{animation:envelope-reveal-glow 3.4s ease-in-out infinite}@keyframes envelope-reveal-glow{0%,to{filter:drop-shadow(0 12px 26px rgba(198,154,52,.22))}50%{filter:drop-shadow(0 12px 34px rgba(198,154,52,.42))}}.envelope-reveal-flap{transform-origin:top center;transform:rotateX(0deg);transition:transform .9s cubic-bezier(.4,0,.2,1);z-index:4}.envelope-reveal-seal{position:absolute;left:50%;top:40%;width:18%;transform:translate(-50%,-50%);z-index:5;animation:envelope-reveal-seal-pulse 2.4s ease-in-out infinite}@keyframes envelope-reveal-seal-pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.06)}}.envelope-reveal-slip{z-index:2;transform:translateY(6%) scale(.96);opacity:0;transition:transform 1s cubic-bezier(.4,0,.2,1) .25s,opacity .6s ease .25s}.envelope-reveal-back{z-index:1}.envelope-reveal-front{z-index:3}.envelope-reveal-scene.is-open .envelope-reveal-flap{transform:rotateX(-168deg)}.envelope-reveal-scene.is-open .envelope-reveal-seal{opacity:0;transition:opacity .3s ease}.envelope-reveal-scene.is-open .envelope-reveal-slip{transform:translateY(-58%) scale(1.06);opacity:1}.envelope-reveal-paper-float{animation:envelope-reveal-paper-float 5.5s ease-in-out infinite}@keyframes envelope-reveal-paper-float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-9px) rotate(1deg)}}.envelope-reveal-ribbon-sway{animation:envelope-reveal-ribbon-sway 4.5s ease-in-out infinite;transform-origin:top center}@keyframes envelope-reveal-ribbon-sway{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}.envelope-reveal-confetti-drift{animation:envelope-reveal-confetti-drift 7s ease-in-out infinite}@keyframes envelope-reveal-confetti-drift{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:.9;transform:translateY(-8px)}}.envelope-confetti-field{position:absolute;overflow:hidden}.envelope-confetti-piece{position:absolute;border-radius:1.5px;opacity:.92;box-shadow:0 1px 2px rgba(58,42,38,.14);transform:rotate(var(--er-rot,0deg));animation-name:envelope-confetti-float;animation-timing-function:ease-in-out;animation-iteration-count:infinite;will-change:transform}.envelope-confetti-piece.is-circle{border-radius:50%}.envelope-confetti-piece.is-streamer{border-radius:3px;opacity:.82}.envelope-confetti-piece.is-triangle{border-radius:0;box-shadow:none;clip-path:polygon(50% 0,0 100%,100% 100%)}@keyframes envelope-confetti-float{0%{transform:translateZ(0) rotate(var(--er-rot,0deg))}50%{transform:translate3d(calc(var(--er-drift, 8px) * -.6),var(--er-drift,8px),0) rotate(calc(var(--er-rot, 0deg) + 180deg))}to{transform:translateZ(0) rotate(calc(var(--er-rot, 0deg) + 1turn))}}.envelope-reveal-twinkle{animation:envelope-reveal-twinkle 2.8s ease-in-out infinite}@keyframes envelope-reveal-twinkle{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.envelope-reveal-reveal{animation:envelope-reveal-enter .7s ease both}@keyframes envelope-reveal-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.envelope-reveal-hero-in{animation:envelope-reveal-hero-in .9s ease both}@keyframes envelope-reveal-hero-in{0%{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.envelope-reveal-confetti-fall span{position:absolute;top:-12vh;width:9px;height:13px;border-radius:2px;opacity:0;animation:envelope-reveal-confetti-fall 3s ease-out forwards}@keyframes envelope-reveal-confetti-fall{0%{transform:translateY(-12vh) rotate(0deg);opacity:1}to{transform:translateY(88vh) rotate(680deg);opacity:0}}.envelope-reveal-success-burst span{display:inline-block;animation:envelope-reveal-stamp .6s ease both}.envelope-reveal-success-burst span:nth-child(2){animation-delay:.08s}.envelope-reveal-success-burst span:nth-child(3){animation-delay:.16s}.envelope-reveal-success-burst span:nth-child(4){animation-delay:.24s}@keyframes envelope-reveal-stamp{0%{opacity:0;transform:scale(1.5) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.envelope-reveal-pop{animation:envelope-reveal-pop .5s ease both}@keyframes envelope-reveal-pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.envelope-reveal-flap,.envelope-reveal-intro,.envelope-reveal-seal,.envelope-reveal-slip{transition:none!important}.envelope-confetti-piece,.envelope-reveal-confetti-drift,.envelope-reveal-confetti-fall span,.envelope-reveal-glow,.envelope-reveal-hero-in,.envelope-reveal-paper-float,.envelope-reveal-pop,.envelope-reveal-reveal,.envelope-reveal-ribbon-sway,.envelope-reveal-seal,.envelope-reveal-success-burst span,.envelope-reveal-twinkle{animation:none!important}.envelope-reveal-gold-btn:hover,.envelope-reveal-insert:hover,.envelope-reveal-outline-btn:hover,.envelope-reveal-photo-frame:hover{transform:none}}@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,500;0,9..144,600;0,9..144,700;1,9..144,500&family=Nunito:wght@500;600;700;800&display=swap");.popup-storybook-shell{background-color:#fffaf2;color:#2b2b52;font-family:var(--font-inter),system-ui,sans-serif}.popup-storybook-atmosphere{background-color:#fffaf2;background-image:radial-gradient(ellipse 55% 40% at 10% 6%,rgba(140,189,214,.16),transparent 55%),radial-gradient(ellipse 50% 35% at 90% 8%,rgba(230,199,102,.18),transparent 52%),radial-gradient(ellipse 60% 45% at 50% 100%,rgba(229,167,158,.14),transparent 60%),repeating-linear-gradient(115deg,rgba(231,214,196,.14) 0 1px,transparent 1px 26px)}.popup-storybook-paper-texture{background-color:#fffaf2;background-image:radial-gradient(circle at 20% 30%,rgba(231,214,196,.28),transparent 40%),radial-gradient(circle at 80% 70%,rgba(194,220,234,.22),transparent 42%),repeating-linear-gradient(115deg,rgba(231,214,196,.18) 0 1px,transparent 1px 24px)}.popup-storybook-display{font-family:"Fraunces",var(--font-inter),Georgia,serif}.popup-storybook-label{font-family:"Nunito",var(--font-inter),system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}.popup-storybook-gutter{box-sizing:border-box;margin-left:auto;margin-right:auto;max-width:1140px;min-width:0;padding-left:1rem;padding-right:1rem;width:100%}@media (min-width:640px){.popup-storybook-gutter{padding-left:1.5rem;padding-right:1.5rem}}.popup-storybook-section-band{position:relative;width:100%}.popup-storybook-section-ivory{background-color:#fffaf2}.popup-storybook-section-blush{background-color:#fdeee9}.popup-storybook-section-powder{background-color:#eef6fb}.popup-storybook-section-mint{background-color:#eef8f1}.popup-storybook-section-gold{background-color:#fffaf0;background-image:repeating-linear-gradient(90deg,rgba(198,154,52,.08) 0 2px,transparent 2px 24px)}.popup-storybook-card-shadow{box-shadow:5px 6px 0 rgba(43,43,82,.14)}.popup-storybook-paper-card{position:relative;background:#ffffff;border:2px solid #e7d6c4;border-radius:1.5rem;box-shadow:6px 7px 0 rgba(43,43,82,.12)}.popup-storybook-paper-card:after{content:"";position:absolute;right:0;bottom:0;width:30px;height:30px;background:linear-gradient(135deg,transparent 50%,#f6e6d3 0);border-bottom-right-radius:1.5rem;border-left:2px solid #e7d6c4;border-top:2px solid #e7d6c4}.popup-storybook-story-btn{border:2px solid #2b2b52;box-shadow:0 4px 0 #2b2b52;transition:transform .15s ease,box-shadow .15s ease}.popup-storybook-story-btn:hover{transform:translateY(1px);box-shadow:0 3px 0 #2b2b52}.popup-storybook-story-btn:active{transform:translateY(3px);box-shadow:0 1px 0 #2b2b52}.popup-storybook-sticky-tab{border-top:3px solid #c69a34}.popup-storybook-chapter-card{background:#ffffff;border:2px solid #e7d6c4;border-radius:1rem;transition:transform .25s ease}.popup-storybook-chapter-card:hover{transform:translateY(-4px) rotate(-.4deg)}.popup-storybook-photo-frame{transition:transform .25s ease}.popup-storybook-photo-frame:hover{transform:rotate(0deg) scale(1.03) translateY(-4px)}.popup-storybook-gallery-strip{-ms-overflow-style:none;display:flex;gap:1rem;overflow-x:auto;padding-bottom:.5rem;scroll-snap-type:x mandatory;scrollbar-width:none}.popup-storybook-gallery-strip::-webkit-scrollbar{display:none}.popup-storybook-gallery-strip>figure{flex:0 0 min(72vw,220px);scroll-snap-align:start}.popup-storybook-reveal{animation:popup-storybook-reveal .6s ease both}@keyframes popup-storybook-reveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.popup-storybook-page-rise{animation:popup-storybook-page-rise .7s cubic-bezier(.22,1,.36,1) both}@keyframes popup-storybook-page-rise{0%{opacity:0;transform:translateY(26px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.popup-storybook-balloon-float{animation:popup-storybook-balloon-float 5.5s ease-in-out infinite}@keyframes popup-storybook-balloon-float{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-12px) rotate(2deg)}}.popup-storybook-ribbon-sway{animation:popup-storybook-ribbon-sway 4.5s ease-in-out infinite;transform-origin:top center}@keyframes popup-storybook-ribbon-sway{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}.popup-storybook-confetti-drift{animation:popup-storybook-confetti-drift 7s ease-in-out infinite}@keyframes popup-storybook-confetti-drift{0%,to{opacity:.55;transform:translateY(0)}50%{opacity:.9;transform:translateY(-8px)}}.popup-storybook-twinkle{animation:popup-storybook-twinkle 2.4s ease-in-out infinite}@keyframes popup-storybook-twinkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.86)}}.popup-storybook-cover-glow{animation:popup-storybook-cover-glow 3.2s ease-in-out infinite}@keyframes popup-storybook-cover-glow{0%,to{filter:drop-shadow(0 8px 18px rgba(198,154,52,.28))}50%{filter:drop-shadow(0 10px 26px rgba(198,154,52,.5))}}.popup-storybook-success-burst span{animation:popup-storybook-stamp .6s ease both;display:inline-block}.popup-storybook-success-burst span:nth-child(2){animation-delay:.08s}.popup-storybook-success-burst span:nth-child(3){animation-delay:.16s}.popup-storybook-success-burst span:nth-child(4){animation-delay:.24s}@keyframes popup-storybook-stamp{0%{opacity:0;transform:scale(1.6) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.popup-storybook-intro{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;text-align:center;overflow:hidden}.popup-storybook-intro.is-dismissed{opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s linear .5s;pointer-events:none}.popup-storybook-intro-fade{animation:popup-storybook-reveal .5s ease both}.popup-storybook-scene{position:relative;width:min(78vw,260px);perspective:1400px}.popup-storybook-book{position:relative;transform-style:preserve-3d;transition:transform .6s ease}.popup-storybook-cover-leaf{transform-origin:left center;transition:transform 1s cubic-bezier(.33,1,.68,1);backface-visibility:hidden}.popup-storybook-scene.is-open .popup-storybook-cover-leaf{transform:rotateY(-155deg)}.popup-storybook-popup-scene{opacity:0;transform:translateY(30px) scale(.7)}.popup-storybook-scene.is-open .popup-storybook-popup-scene{animation:popup-storybook-popup-rise .8s cubic-bezier(.22,1,.36,1) .75s both}@keyframes popup-storybook-popup-rise{0%{opacity:0;transform:translateY(30px) scale(.7)}to{opacity:1;transform:translateY(0) scale(1)}}.popup-storybook-intro-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.popup-storybook-intro-confetti span{position:absolute;top:-12px;width:9px;height:14px;border-radius:2px;animation:popup-storybook-confetti-fall linear both}@keyframes popup-storybook-confetti-fall{0%{opacity:0;transform:translateY(-10px) rotate(0deg)}15%{opacity:1}to{opacity:0;transform:translateY(105vh) rotate(1turn)}}@media (prefers-reduced-motion:reduce){.popup-storybook-balloon-float,.popup-storybook-confetti-drift,.popup-storybook-cover-glow,.popup-storybook-cover-leaf,.popup-storybook-intro-confetti span,.popup-storybook-intro-fade,.popup-storybook-page-rise,.popup-storybook-popup-scene,.popup-storybook-reveal,.popup-storybook-ribbon-sway,.popup-storybook-success-burst span,.popup-storybook-twinkle{animation:none!important;transition:none!important}.popup-storybook-chapter-card:hover,.popup-storybook-photo-frame:hover{transform:none}}.toy-train-shell{background-color:#fff8ea;color:#162744}.toy-train-atmosphere{background-color:#fff8ea;background-image:radial-gradient(ellipse 55% 40% at 10% 4%,rgba(43,120,197,.12),transparent 55%),radial-gradient(ellipse 48% 34% at 92% 8%,rgba(231,71,60,.1),transparent 52%),radial-gradient(ellipse 60% 45% at 50% 100%,rgba(205,238,223,.55),transparent 60%)}.toy-train-display{font-family:Public Sans,Segoe UI,system-ui,sans-serif}.toy-train-label{font-family:Space Grotesk,Segoe UI,system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}.toy-train-page,.toy-train-rsvp-page{--train-cream:#fff8ea;--train-paper:#fffdf7;--train-red:#e7473c;--train-red-deep:#a32f2a;--train-blue:#2b78c5;--train-blue-deep:#174d8a;--train-sky:#d9efff;--train-yellow:#ffd65a;--train-gold:#d3aa43;--train-mint:#cdeedf;--train-ink:#162744;--train-muted:#475569;color:var(--train-ink);font-family:Nunito Sans,Segoe UI,sans-serif}.toy-train-page{position:relative;overflow-x:clip;background:radial-gradient(circle at 10% 6%,rgb(255 214 90/24%) 0 5rem,transparent 5.1rem),radial-gradient(circle at 90% 18%,rgb(43 120 197/12%) 0 7rem,transparent 7.1rem),var(--train-cream)}.toy-train-gutter{width:min(100% - 2rem,76rem);margin-inline:auto}.toy-train-nav{position:sticky;z-index:50;top:0;border-bottom:2px solid rgb(211 170 67/65%);background:rgb(255 248 234/94%);box-shadow:0 8px 24px rgb(22 39 68/10%);backdrop-filter:blur(14px)}.toy-train-nav-inner{display:flex;min-height:4rem;align-items:center;justify-content:space-between;gap:.75rem}.toy-train-brand{display:inline-flex;min-width:0;min-height:44px;align-items:center;gap:.6rem;color:var(--train-ink);font-family:Public Sans,Segoe UI,sans-serif;font-weight:900}.toy-train-brand span{overflow:hidden;max-width:14rem;text-overflow:ellipsis;white-space:nowrap}.toy-train-nav-links{display:none;align-items:center;justify-content:center;gap:1.35rem}.toy-train-mobile-menu a,.toy-train-nav-links a{color:var(--train-blue-deep);font-family:Space Grotesk,Segoe UI,sans-serif;font-size:.76rem;font-weight:800;letter-spacing:.06em}.toy-train-nav-links a{display:inline-flex;min-height:44px;align-items:center;border-bottom:3px solid transparent}.toy-train-nav-links a:focus-visible,.toy-train-nav-links a:hover{border-color:var(--train-red)}.toy-train-nav-actions{display:flex;flex:none;align-items:center;gap:.5rem}.toy-train-map-button,.toy-train-nav-rsvp{min-height:44px;border:2px solid var(--train-red-deep);border-radius:999px;background:var(--train-red);box-shadow:0 4px 0 var(--train-red-deep);color:white;padding:.55rem 1rem}.toy-train-map-button,.toy-train-menu-button,.toy-train-nav-rsvp{display:inline-flex;align-items:center;justify-content:center;font-weight:900}.toy-train-menu-button{width:44px;height:44px;border:2px solid var(--train-ink);border-radius:.8rem;color:var(--train-ink);font-size:1.7rem;line-height:1}.toy-train-mobile-menu{display:grid;gap:.2rem;border-top:1px solid rgb(211 170 67/50%);padding-block:.7rem 1rem}.toy-train-mobile-menu a{display:flex;min-height:44px;align-items:center;border-radius:.7rem;padding-inline:.75rem}.toy-train-mobile-menu a:hover{background:rgb(43 120 197/10%)}.toy-train-hero{position:relative;overflow:hidden;border-bottom:5px solid var(--train-gold);background:linear-gradient(180deg,var(--train-sky) 0 61%,var(--train-mint) 61% 100%)}.toy-train-clouds,.toy-train-clouds:after,.toy-train-clouds:before{position:absolute;width:8rem;height:2.5rem;border-radius:999px;background:rgb(255 255 255/75%);content:""}.toy-train-clouds{top:12%;left:-2rem;animation:toy-train-cloud-drift 16s ease-in-out infinite alternate}.toy-train-clouds:before{top:5rem;left:72vw;width:11rem}.toy-train-clouds:after{top:11rem;left:28vw;width:5rem;opacity:.65}.toy-train-hero-inner{position:relative;z-index:1;display:grid;width:min(100% - 2rem,70rem);min-height:calc(100svh - 4rem);margin-inline:auto;padding-block:1.4rem 2.2rem;place-items:center;text-align:center}.toy-train-station-sign{align-self:start;display:inline-flex;align-items:center;gap:.65rem}.toy-train-station-sign p{max-width:17rem;font-family:Space Grotesk,Segoe UI,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.toy-train-station-sign-bolt{width:.45rem;height:.45rem;flex:none;border-radius:50%;background:var(--train-gold);box-shadow:inset 0 1px 1px rgb(255 255 255/60%)}.toy-train-hero-copy{position:relative;z-index:3;width:min(100%,44rem)}.toy-train-hero-copy h1,.toy-train-rsvp-heading h1,.toy-train-rsvp-state h1,.toy-train-station-content>h2{font-family:Public Sans,Segoe UI,sans-serif;font-weight:900;letter-spacing:-.035em}.toy-train-hero-copy h1{font-size:clamp(2rem,9vw,5.5rem);line-height:.98;text-wrap:balance;text-shadow:0 3px 0 rgb(255 255 255/55%)}.toy-train-hero-copy>p{max-width:38rem;margin:.7rem auto 0;color:var(--train-muted);font-size:clamp(.95rem,2vw,1.15rem);line-height:1.55}.toy-train-personal-greeting{color:var(--train-blue-deep)!important;font-weight:800}.toy-train-personal-note{max-width:33rem;margin:.65rem auto 0;border:2px dashed var(--train-gold);border-radius:.85rem;background:rgb(255 253 247/88%);padding:.65rem .9rem;color:var(--train-ink);font-size:.88rem;font-style:italic}.toy-train-hero-scene{position:relative;width:min(100%,28rem);height:9rem;perspective:800px}.toy-train-sun{position:absolute;top:0;right:6%;width:4.5rem;height:4.5rem;border:4px solid rgb(255 255 255/60%);border-radius:50%;background:var(--train-yellow);box-shadow:0 0 35px rgb(255 214 90/70%)}.toy-train-engine{position:absolute;z-index:2;bottom:1.3rem;left:50%;width:12.5rem;height:6.5rem;transform:translateX(-50%) translateZ(25px);animation:toy-train-arrive 1.1s cubic-bezier(.22,.8,.25,1) both}.toy-train-engine-cab{position:absolute;right:0;bottom:1.3rem;width:5.1rem;height:5rem;border:3px solid var(--train-ink);border-radius:.8rem .8rem .25rem .25rem;background:var(--train-blue);box-shadow:inset 0 5px 0 rgb(255 255 255/28%),8px 9px 0 rgb(22 39 68/12%)}.toy-train-engine-window{position:absolute;top:.65rem;left:.8rem;width:3.2rem;height:1.8rem;border:3px solid var(--train-ink);border-radius:.35rem;background:var(--train-sky)}.toy-train-engine-boiler{position:absolute;bottom:1.25rem;left:0;width:8.7rem;height:3.7rem;border:3px solid var(--train-ink);border-radius:2rem .75rem .75rem .6rem;background:var(--train-red);box-shadow:inset 0 7px 0 rgb(255 255 255/25%),5px 8px 0 rgb(22 39 68/12%)}.toy-train-engine-lamp{position:absolute;top:.65rem;left:-.45rem;width:1rem;height:1rem;border:2px solid var(--train-ink);border-radius:50%;background:var(--train-yellow);box-shadow:0 0 16px var(--train-yellow);animation:toy-train-lamp 2s ease-in-out infinite}.toy-train-engine-stack{position:absolute;top:-2.4rem;left:2rem;width:1.8rem;height:2.8rem;border:3px solid var(--train-ink);border-radius:.35rem .35rem .15rem .15rem;background:var(--train-ink)}.toy-train-wheel{position:absolute;z-index:4;bottom:0;width:2.5rem;height:2.5rem;border:5px solid var(--train-ink);border-radius:50%;background:var(--train-yellow);box-shadow:inset 0 0 0 4px var(--train-red);animation:toy-train-wheel 1.2s linear infinite}.toy-train-wheel:after{position:absolute;top:50%;left:0;width:100%;height:3px;background:var(--train-ink);content:"";transform:translateY(-50%)}.toy-train-wheel-front{left:1.7rem}.toy-train-wheel-back{right:1.2rem}.toy-train-steam{position:absolute;z-index:5;top:-.7rem;left:2rem;width:1.2rem;height:1.2rem;border-radius:50%;background:rgb(255 255 255/85%);animation:toy-train-steam 2.6s ease-out infinite}.toy-train-steam-two{animation-delay:1.2s}.toy-train-hero-track{position:absolute;bottom:.6rem;left:50%;width:88%;height:2.4rem;border-top:5px solid #607086;border-bottom:5px solid #607086;background:repeating-linear-gradient(90deg,transparent 0 12px,#9a694a 12px 24px,transparent 24px 37px);transform:translateX(-50%) perspective(250px) rotateX(55deg)}.toy-train-hero-portrait{position:absolute;z-index:4;right:clamp(0rem,5vw,3rem);bottom:10.5rem;width:5.2rem;height:5.2rem;overflow:hidden;border:5px solid white;border-radius:1.1rem;box-shadow:0 8px 0 rgb(22 39 68/14%);transform:rotate(3deg)}.toy-train-hero-portrait img{width:100%;height:100%;object-fit:cover}.toy-train-departure-ticket{display:grid;width:min(100%,42rem);grid-template-columns:auto 1fr;gap:.7rem 1rem;border:3px solid var(--train-gold);border-radius:1.2rem;background:var(--train-paper);box-shadow:0 8px 0 rgb(22 39 68/12%),inset 0 0 0 2px white;padding:.8rem;text-align:left}.toy-train-ticket-mark{width:3.7rem;grid-row:1/span 2;align-self:center}.toy-train-departure-ticket>div{min-width:0}.toy-train-departure-ticket small,.toy-train-departure-ticket span,.toy-train-departure-ticket strong{display:block}.toy-train-departure-ticket span{color:var(--train-red-deep);font-family:Space Grotesk,Segoe UI,sans-serif;font-size:.64rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.toy-train-departure-ticket strong{overflow-wrap:anywhere;font-size:.88rem}.toy-train-departure-ticket small{color:var(--train-muted)}.toy-train-ticket-button{display:inline-flex;min-width:min(100%,15rem);min-height:48px;align-items:center;justify-content:center;border:2px solid var(--train-red-deep);box-shadow:0 6px 0 var(--train-red-deep),0 12px 22px rgb(22 39 68/14%);font-family:Space Grotesk,Segoe UI,sans-serif;letter-spacing:.04em}.toy-train-ticket-button:hover{transform:translateY(-2px)}.toy-train-ticket-button:active{box-shadow:0 2px 0 var(--train-red-deep);transform:translateY(4px)}.toy-train-countdown{display:flex;justify-content:center;gap:.45rem}.toy-train-countdown span{display:grid;min-width:3.6rem;border:2px solid var(--train-ink);border-radius:.65rem;background:var(--train-ink);box-shadow:inset 0 -3px 0 rgb(255 255 255/15%);color:white;padding:.35rem .5rem}.toy-train-countdown strong{font-size:1rem}.toy-train-countdown small{font-size:.58rem;text-transform:uppercase}.toy-train-route{--route-progress:0;--train-y:0px;--train-dock:0;width:min(100% - 1.25rem,72rem);margin-inline:auto;padding-block:3rem 4rem}.toy-train-rails{position:absolute;z-index:0;top:1rem;bottom:1rem;left:50%;width:3.25rem;overflow:hidden;transform:translateX(-50%)}.toy-train-rail{position:absolute;z-index:2;top:0;bottom:0;width:5px;border-radius:999px;background:#607086;box-shadow:inset 1px 0 rgb(255 255 255/45%)}.toy-train-rail-left{left:.55rem}.toy-train-rail-right{right:.55rem}.toy-train-rails:before{position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent 0 12px,#9a694a 12px 18px,transparent 18px 30px);background-position-y:calc(var(--route-progress) * -60px);content:""}.toy-train-rail-progress{position:absolute;z-index:1;top:0;left:50%;width:.55rem;height:calc(var(--route-progress) * 100%);border-radius:999px;background:linear-gradient(var(--train-yellow),var(--train-red));transform:translateX(-50%);transform-origin:top}.toy-train-route-locomotive{--route-engine-half:6.5rem;position:absolute;z-index:3;top:1rem;left:50%;width:3.5rem;height:13rem;pointer-events:none;filter:drop-shadow(0 9px 8px rgb(22 39 68/30%));transform:translate3d(-50%,calc(var(--train-y) - var(--route-engine-half)),0) scale(calc(.92 + var(--train-dock) * .08));transform-origin:center;transition:filter .18s ease,transform .18s ease;will-change:transform}.toy-train-route[data-train-direction=reverse] .toy-train-route-locomotive{transform:translate3d(-50%,calc(var(--train-y) - var(--route-engine-half)),0) scale(calc(.92 + var(--train-dock) * .08))}.toy-train-route[data-train-direction=idle] .toy-train-route-locomotive{filter:drop-shadow(0 7px 9px rgb(211 170 67/35%))}.toy-train-track-consist,.toy-train-track-consist *{box-sizing:border-box}.toy-train-track-consist{--track-engine-accent:#ffd65a;position:relative;width:100%;height:100%;transform-style:preserve-3d}.toy-train-track-engine{--track-engine-primary:#ef4b43;--track-engine-primary-deep:#9f2028;--track-engine-secondary:#2e7fd1;--track-engine-secondary-deep:#173f82;--track-engine-accent:#ffd65a;position:absolute;right:0;bottom:0;left:0;width:100%;height:6rem;isolation:isolate;border-radius:1rem 1rem .8rem .8rem;transform:perspective(180px) rotateX(5deg);transform-style:preserve-3d}.toy-train-track-car{--car-bright:#8bd2ff;--car-main:#3488d8;--car-deep:#184b91;--car-detail:var(--track-engine-accent);position:absolute;left:50%;width:3.05rem;height:2.2rem;transform:translateX(-50%) perspective(160px) rotateX(6deg);transform-style:preserve-3d}.toy-train-track-car-blue{top:0}.toy-train-track-car-yellow{--car-bright:#ffeb8b;--car-main:#f4b72e;--car-deep:#c97816;--car-detail:#ef4b43;top:2.3rem}.toy-train-track-car-mint{--car-bright:#83ead0;--car-main:#35b99f;--car-deep:#16786b;--car-detail:#2e7fd1;top:4.6rem}.toy-train-track-car-shadow{position:absolute;z-index:-1;inset:.45rem -.2rem -.3rem .3rem;border-radius:44%;background:rgb(22 39 68/28%);filter:blur(.22rem);transform:translateZ(-8px)}.toy-train-track-car-body{position:absolute;z-index:1;inset:.14rem .12rem .22rem;border:3px solid var(--train-ink);border-radius:.65rem;background:linear-gradient(90deg,rgb(255 255 255/38%),transparent 25% 70%,rgb(22 39 68/23%)),linear-gradient(180deg,var(--car-bright),var(--car-main) 58%,var(--car-deep));box-shadow:inset .2rem 0 0 rgb(255 255 255/24%),inset -.18rem 0 0 rgb(22 39 68/20%),0 .18rem 0 rgb(22 39 68/25%)}.toy-train-track-car-roof{position:absolute;z-index:4;top:.32rem;right:.36rem;left:.36rem;height:.66rem;border:2px solid var(--train-ink);border-radius:.45rem;background:linear-gradient(180deg,white,var(--car-bright) 42%,var(--car-main));box-shadow:0 .16rem 0 rgb(22 39 68/24%);transform:translateZ(7px)}.toy-train-track-car-cargo{position:absolute;z-index:5;right:.42rem;bottom:.38rem;left:.42rem;display:flex;justify-content:center;gap:.18rem;transform:translateZ(8px)}.toy-train-track-car-cargo span{width:.38rem;height:.38rem;border:1px solid var(--train-ink);border-radius:50%;background:var(--car-detail);box-shadow:inset .08rem .08rem 0 rgb(255 255 255/55%)}.toy-train-car-wheel{position:absolute;z-index:3;top:.68rem;width:.5rem;height:.92rem;border:2px solid var(--train-ink);border-radius:.28rem;background:linear-gradient(90deg,rgb(255 255 255/28%),transparent 40%),repeating-linear-gradient(180deg,var(--track-engine-accent) 0 .18rem,var(--car-deep) .19rem .36rem)}.toy-train-car-wheel-left{left:-.12rem}.toy-train-car-wheel-right{right:-.12rem}.toy-train-car-connector{position:absolute;z-index:0;left:50%;width:.62rem;height:.75rem;border:2px solid var(--train-ink);border-radius:.22rem;background:linear-gradient(90deg,#8995a7,#4e5b70);transform:translateX(-50%)}.toy-train-car-connector-one{top:1.95rem;height:.62rem}.toy-train-car-connector-two{top:4.25rem;height:.62rem}.toy-train-car-connector-engine{top:6.55rem;height:.65rem}.toy-train-track-engine-shadow{position:absolute;z-index:-1;inset:.55rem -.2rem -.4rem .35rem;border-radius:45%;background:rgb(22 39 68/32%);filter:blur(.28rem);transform:translateZ(-12px)}.toy-train-track-chassis{position:absolute;z-index:1;inset:.35rem .3rem .48rem;border:3px solid var(--train-ink);border-radius:.85rem;background:linear-gradient(90deg,rgb(255 255 255/38%),transparent 25% 72%,rgb(10 38 91/30%)),linear-gradient(180deg,#6ab9ff,var(--track-engine-primary) 58%,var(--track-engine-primary-deep));box-shadow:inset .24rem 0 0 rgb(255 255 255/26%),inset -.22rem 0 0 rgb(10 38 91/24%),0 .22rem 0 var(--train-ink)}.toy-train-track-cab{position:absolute;z-index:5;top:.5rem;right:.45rem;left:.45rem;height:1.75rem;border:3px solid var(--train-ink);border-radius:.7rem .7rem .45rem .45rem;background:linear-gradient(135deg,#71e3cf 0 30%,var(--track-engine-secondary) 31% 70%,var(--track-engine-secondary-deep));box-shadow:inset 0 .2rem 0 rgb(255 255 255/42%),0 .25rem 0 rgb(22 39 68/28%);transform:translateZ(9px)}.toy-train-track-cab-roof{position:absolute;inset:-.28rem -.22rem auto;height:.55rem;border:3px solid var(--train-ink);border-radius:.6rem;background:linear-gradient(180deg,#ffec91,var(--track-engine-accent) 55%,#d59b19);box-shadow:inset 0 .12rem 0 rgb(255 255 255/48%)}.toy-train-track-window{position:absolute;top:.48rem;width:.72rem;height:.72rem;border:2px solid var(--train-ink);border-radius:.22rem;background:linear-gradient(135deg,white,#bce7ff 48%,#74bde9 49%);box-shadow:inset 0 .1rem 0 rgb(255 255 255/70%)}.toy-train-track-window-left{left:.22rem}.toy-train-track-window-right{right:.22rem}.toy-train-track-boiler{position:absolute;z-index:4;top:2rem;bottom:.72rem;left:.7rem;width:2.1rem;border:3px solid var(--train-ink);border-radius:1.05rem 1.05rem .75rem .75rem;background:radial-gradient(circle at 32% 22%,rgb(255 255 255/55%) 0 7%,transparent 8%),linear-gradient(90deg,#74bfff,var(--track-engine-primary) 46%,#245db5 78%,var(--track-engine-primary-deep));box-shadow:inset .22rem 0 0 rgb(255 255 255/24%),inset -.25rem 0 0 rgb(69 10 18/24%),0 .22rem 0 rgb(22 39 68/26%);transform:translateZ(7px)}.toy-train-track-boiler-band{position:absolute;right:-.12rem;bottom:.75rem;left:-.12rem;height:.45rem;border-block:2px solid var(--train-ink);background:linear-gradient(180deg,#fff0a1,var(--track-engine-accent))}.toy-train-track-dome{top:.65rem;width:.85rem;height:.85rem;background:radial-gradient(circle at 32% 28%,white 0 9%,var(--track-engine-accent) 12% 56%,#c68e18 58%);box-shadow:0 .12rem 0 rgb(22 39 68/28%);transform:translateX(-50%) translateZ(7px)}.toy-train-track-dome,.toy-train-track-headlamp{position:absolute;left:50%;border:2px solid var(--train-ink);border-radius:50%}.toy-train-track-headlamp{bottom:-.38rem;width:.8rem;height:.8rem;background:radial-gradient(circle,white 0 16%,var(--track-engine-accent) 20% 60%,#d29315 64%);box-shadow:0 0 .65rem rgb(255 214 90/75%);transform:translateX(-50%) translateZ(8px)}.toy-train-track-cowcatcher{position:absolute;z-index:2;bottom:-.12rem;left:50%;width:3.1rem;height:1rem;border:3px solid var(--train-ink);background:repeating-linear-gradient(90deg,transparent 0 .38rem,rgb(22 39 68/75%) .39rem .5rem),linear-gradient(180deg,#ffec91,var(--track-engine-accent) 55%,#d99d1d);clip-path:polygon(16% 0,84% 0,100% 100%,0 100%);transform:translateX(-50%) translateZ(2px)}.toy-train-track-coupler{position:absolute;z-index:0;top:-.18rem;left:50%;width:.7rem;height:.65rem;border:2px solid var(--train-ink);border-radius:.25rem;background:#667388;transform:translateX(-50%)}.toy-train-track-wheel{position:absolute;z-index:3;width:.62rem;height:1.08rem;border:2px solid var(--train-ink);border-radius:.35rem;background:linear-gradient(90deg,rgb(255 255 255/25%),transparent 35%),repeating-linear-gradient(180deg,var(--track-engine-accent) 0 .2rem,var(--track-engine-secondary) .21rem .42rem);box-shadow:0 .14rem 0 rgb(22 39 68/30%)}.toy-train-track-wheel-front-left{bottom:.85rem;left:-.12rem}.toy-train-track-wheel-front-right{right:-.12rem;bottom:.85rem}.toy-train-track-wheel-back-left{top:1rem;left:-.12rem}.toy-train-track-wheel-back-right{top:1rem;right:-.12rem}.toy-train-route[data-train-direction=forward] .toy-train-car-wheel,.toy-train-route[data-train-direction=forward] .toy-train-track-wheel{animation:toy-train-track-wheel-roll .5s linear infinite}.toy-train-route[data-train-direction=reverse] .toy-train-car-wheel,.toy-train-route[data-train-direction=reverse] .toy-train-track-wheel{animation:toy-train-track-wheel-roll .5s linear infinite reverse}.toy-train-station{--station-progress:0;position:relative;display:flex;min-height:22rem;align-items:center;padding-block:2.2rem;scroll-margin-top:5rem;opacity:1;transform:none;transition:opacity .6s ease,transform .7s cubic-bezier(.2,.75,.2,1)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station:not([data-visible=true]){opacity:0;transform:translateY(2rem) scale(.98)}.toy-train-station-platform{position:relative;width:calc(50% - 1.9rem);border:3px solid var(--train-ink);border-radius:1.5rem;background:var(--station-tone,var(--train-paper));box-shadow:0 11px 0 rgb(22 39 68/12%),0 23px 45px rgb(22 39 68/10%);transition:box-shadow .45s ease,filter .45s ease,transform .72s cubic-bezier(.2,.75,.2,1);transform-style:preserve-3d}.toy-train-station[data-active=true] .toy-train-station-platform{box-shadow:0 11px 0 rgb(22 39 68/12%),0 23px 45px rgb(22 39 68/12%),0 0 0 5px rgb(255 214 90/18%)}.toy-train-station-platform:after{position:absolute;top:50%;width:2rem;height:5px;background:var(--train-ink);content:""}.toy-train-station-left .toy-train-station-platform{margin-right:auto}.toy-train-station-left .toy-train-station-platform:after{right:-2rem}.toy-train-station-right .toy-train-station-platform{margin-left:auto}.toy-train-station-right .toy-train-station-platform:after{left:-2rem}.toy-train-station-center .toy-train-station-platform{width:min(100%,59rem);margin-inline:auto}.toy-train-station-center .toy-train-station-platform:after{display:none}.toy-train-tone-cream{--station-tone:var(--train-paper)}.toy-train-tone-sky{--station-tone:#eef8ff}.toy-train-tone-mint{--station-tone:#edf9f4}.toy-train-tone-yellow{--station-tone:#fff9d9}.toy-train-tone-coral{--station-tone:#fff0eb}.toy-train-platform-lamp{position:absolute;top:-2.2rem;width:1.1rem;height:2.5rem;border:3px solid var(--train-ink);border-radius:.45rem .45rem 0 0;background:#8994a4;box-shadow:0 0 0 rgb(255 214 90/0);filter:saturate(.4);transition:background .35s ease,box-shadow .35s ease,filter .35s ease,transform .35s ease}.toy-train-station[data-active=true] .toy-train-platform-lamp,.toy-train-station[data-completed=true] .toy-train-platform-lamp{background:var(--train-yellow);box-shadow:0 0 23px rgb(255 214 90/78%);filter:saturate(1)}.toy-train-station[data-active=true] .toy-train-platform-lamp{transform:translateY(-.16rem) scale(1.08)}.toy-train-station-left .toy-train-platform-lamp{right:1.25rem}.toy-train-station-center .toy-train-platform-lamp,.toy-train-station-right .toy-train-platform-lamp{left:1.25rem}.toy-train-station-content{padding:clamp(1.2rem,4vw,2.25rem);transform-style:preserve-3d}.toy-train-section-icon{width:3.5rem;height:3.5rem;margin-bottom:.65rem}.toy-train-station-content>h2{font-size:clamp(1.55rem,5vw,2.65rem);line-height:1.08;text-wrap:balance}.toy-train-section-subtitle{margin-top:.55rem;color:var(--train-muted);line-height:1.55}.toy-train-station-content blockquote,.toy-train-welcome-message{margin-top:1.25rem;color:var(--train-ink);font-size:clamp(1rem,2vw,1.18rem);line-height:1.75}.toy-train-station-content blockquote{border-left:5px solid var(--train-gold);padding-left:1rem;font-style:italic}.toy-train-host-attribution{margin-top:.8rem;color:var(--train-red-deep);font-weight:800}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=platform-rise]:not([data-visible=true]) .toy-train-station-platform{transform:translateY(3.5rem) rotateX(-11deg) scale(.96)}.toy-train-station[data-train-motion=notice-swing] .toy-train-station-content{transform-origin:50% 0;transition:opacity .5s ease,transform .78s cubic-bezier(.18,.8,.22,1)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=notice-swing]:not([data-visible=true]) .toy-train-station-content{opacity:0;transform:perspective(850px) rotateX(-24deg) rotate(-1.8deg) translateY(-1rem)}.toy-train-station[data-train-motion=board-flip] .toy-train-timetable article,.toy-train-station[data-train-motion=cars-couple] .toy-train-memory-stops li,.toy-train-station[data-train-motion=guide-unfold] .toy-train-guide details,.toy-train-station[data-train-motion=tickets-deliver] .toy-train-wishes-car blockquote,.toy-train-station[data-train-motion=windows-slide] .toy-train-photo-window{--train-item-order:0;opacity:1;transition:opacity .42s ease calc(var(--train-item-order) * 70ms),transform .62s cubic-bezier(.2,.78,.2,1) calc(var(--train-item-order) * 70ms)}.toy-train-station [data-ic-list-item="1"],.toy-train-station article:nth-child(2),.toy-train-station blockquote:nth-child(2),.toy-train-station details:nth-child(2),.toy-train-station figure:nth-child(2),.toy-train-station li:nth-child(2){--train-item-order:1}.toy-train-station [data-ic-list-item="2"],.toy-train-station article:nth-child(3),.toy-train-station blockquote:nth-child(3),.toy-train-station details:nth-child(3),.toy-train-station figure:nth-child(3),.toy-train-station li:nth-child(3){--train-item-order:2}.toy-train-station [data-ic-list-item="3"],.toy-train-station article:nth-child(4),.toy-train-station blockquote:nth-child(4),.toy-train-station details:nth-child(4),.toy-train-station figure:nth-child(4),.toy-train-station li:nth-child(4){--train-item-order:3}.toy-train-station [data-ic-list-item="4"],.toy-train-station article:nth-child(5),.toy-train-station blockquote:nth-child(5),.toy-train-station details:nth-child(5),.toy-train-station figure:nth-child(5),.toy-train-station li:nth-child(5){--train-item-order:4}.toy-train-station [data-ic-list-item="5"],.toy-train-station article:nth-child(n+6),.toy-train-station blockquote:nth-child(n+6),.toy-train-station details:nth-child(n+6),.toy-train-station figure:nth-child(n+6),.toy-train-station li:nth-child(n+6){--train-item-order:5}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=cars-couple]:not([data-visible=true]) .toy-train-memory-stops li{opacity:0;transform:translateX(-3.5rem) rotateY(10deg)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=board-flip]:not([data-visible=true]) .toy-train-timetable article{opacity:0;transform:perspective(700px) rotateX(-72deg) translateY(-.75rem);transform-origin:50% 0}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=windows-slide]:not([data-visible=true]) .toy-train-photo-window{opacity:0;transform:translateX(4rem) translateZ(-60px) rotateY(-9deg)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=tickets-deliver]:not([data-visible=true]) .toy-train-wishes-car blockquote{opacity:0;transform:translateY(-2rem) rotate(-3deg) scale(.94)}.toy-train-station[data-train-motion=depot-settle] .toy-train-depot-address,.toy-train-station[data-train-motion=depot-settle] .toy-train-map-button,.toy-train-station[data-train-motion=depot-settle] .toy-train-section-icon{transition:opacity .45s ease,transform .7s cubic-bezier(.2,.8,.2,1)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=depot-settle]:not([data-visible=true]) .toy-train-section-icon{opacity:0;transform:translateY(-3rem) scale(1.25)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=depot-settle]:not([data-visible=true]) .toy-train-depot-address,.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=depot-settle]:not([data-visible=true]) .toy-train-map-button{opacity:0;transform:translateY(2rem)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=guide-unfold]:not([data-visible=true]) .toy-train-guide details{opacity:0;transform:perspective(720px) rotateX(-42deg);transform-origin:50% 0}.toy-train-station[data-train-motion=photo-freight] .toy-train-station-platform{transition:opacity .55s ease,transform .8s cubic-bezier(.16,.82,.2,1)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=photo-freight]:not([data-visible=true]) .toy-train-station-platform{opacity:0;transform:translateX(4.5rem) rotateY(-8deg)}.toy-train-station[data-train-motion=boarding-stop] .toy-train-final-ticket{transition:opacity .5s ease,transform .75s cubic-bezier(.18,.82,.2,1)}.toy-train-route[data-train-motion-ready=true][data-train-reduced-motion=false] .toy-train-station[data-train-motion=boarding-stop]:not([data-visible=true]) .toy-train-final-ticket{opacity:0;transform:perspective(800px) translateY(2.5rem) rotateX(10deg) scale(.94)}.toy-train-memory-stops{display:grid;gap:1rem;margin-top:1.5rem}.toy-train-memory-stops li{display:grid;grid-template-columns:auto 1fr;gap:.9rem;border-left:5px solid var(--station-accent);border-radius:.9rem;background:white;box-shadow:0 5px 0 rgb(22 39 68/9%);padding:1rem}.toy-train-track-marker{display:inline-flex;width:2.2rem;height:2.2rem;align-items:center;justify-content:center;border:2px solid var(--train-ink);border-radius:50%;background:var(--station-accent,var(--train-yellow));font-weight:900}.toy-train-memory-stops h3,.toy-train-timetable h3{font-family:Public Sans,Segoe UI,sans-serif;font-weight:900}.toy-train-memory-stops p,.toy-train-timetable p{margin-top:.3rem;color:var(--train-muted);font-size:.9rem;line-height:1.55}.toy-train-timetable{display:grid;gap:.75rem;margin-top:1.4rem}.toy-train-timetable article{display:grid;grid-template-columns:5.2rem 1fr;align-items:start;gap:.9rem;border-radius:.75rem;background:white;box-shadow:0 4px 0 rgb(22 39 68/10%);padding:.8rem}.toy-train-timetable time{border-radius:.5rem;background:var(--train-ink);color:white;font-family:Space Grotesk,monospace;font-size:.78rem;font-weight:900;padding:.6rem .35rem;text-align:center}.toy-train-photo-car{display:flex;max-width:100%;gap:0;margin-top:1.5rem;overflow-x:auto;overscroll-behavior-inline:contain;padding:.8rem .35rem 1.4rem;scroll-padding-inline:.35rem;scroll-snap-type:x mandatory}.toy-train-photo-window{position:relative;width:min(78vw,17rem);flex:0 0 auto;border:4px solid var(--train-ink);border-radius:1.1rem 1.1rem .45rem .45rem;background:var(--train-blue);box-shadow:inset 0 7px 0 rgb(255 255 255/25%),0 9px 0 rgb(22 39 68/14%);padding:.9rem;scroll-snap-align:center;transition:transform .25s ease}.toy-train-photo-window:not(:last-child):after{position:absolute;top:50%;right:-.85rem;width:.85rem;height:.45rem;background:var(--train-ink);content:""}.toy-train-photo-window>div{overflow:hidden;border:5px solid var(--train-yellow);border-radius:999px 999px .6rem .6rem;background:white}.toy-train-photo-window img{width:100%;aspect-ratio:4/3;object-fit:cover}.toy-train-photo-window figcaption{min-height:2.4rem;padding-top:.6rem;color:white;font-size:.78rem;font-weight:700;text-align:center}.toy-train-wishes-car{display:grid;gap:.8rem;margin-top:1.4rem}.toy-train-wishes-car blockquote{margin:0;border-left-width:2px;border:2px dashed var(--train-gold);border-radius:.8rem;background:white;padding:1rem;font-style:normal}.toy-train-wishes-car blockquote p{font-size:.95rem}.toy-train-wishes-car footer{margin-top:.55rem;color:var(--train-blue-deep);font-size:.8rem;font-weight:800}.toy-train-depot-address{display:grid;gap:.35rem;margin-top:1.2rem;border:2px dashed var(--train-blue);border-radius:.9rem;background:white;padding:1rem;font-style:normal}.toy-train-depot-address strong{font-size:1.15rem}.toy-train-depot-address span{color:var(--train-muted);overflow-wrap:anywhere}.toy-train-map-button{margin-top:1rem}.toy-train-guide{display:grid;gap:.6rem;margin-top:1.3rem}.toy-train-guide details{border:2px solid var(--train-gold);border-radius:.8rem;background:white;padding-inline:.9rem}.toy-train-guide summary{display:flex;min-height:48px;cursor:pointer;list-style:none;align-items:center;justify-content:space-between;gap:.75rem;font-weight:900}.toy-train-guide summary::-webkit-details-marker{display:none}.toy-train-guide summary span:last-child{color:var(--train-red);font-size:1.4rem;transition:transform .2s ease}.toy-train-guide details[open] summary span:last-child{transform:rotate(45deg)}.toy-train-guide details p{border-top:1px dashed var(--train-gold);padding-block:.8rem 1rem;color:var(--train-muted);line-height:1.6}.toy-train-final-ticket{position:relative;overflow:hidden;text-align:center}.toy-train-final-ticket .toy-train-section-icon{margin-inline:auto}.toy-train-final-ticket .toy-train-ticket-button{margin-top:1.4rem}.toy-train-sparks{position:absolute;inset:0;pointer-events:none}.toy-train-sparks span{--angle:calc(var(--spark-index) * 45deg);position:absolute;top:50%;left:50%;width:.65rem;height:.65rem;border-radius:.15rem;background:var(--train-red);opacity:0}.toy-train-rsvp-state-success .toy-train-sparks span,.toy-train-station[data-train-motion=boarding-stop][data-celebrated=true] .toy-train-sparks span{animation:toy-train-spark 1.45s ease-out 1 both;animation-delay:calc(var(--spark-index) * 65ms)}.toy-train-boarding-bar{box-shadow:0 -8px 24px rgb(22 39 68/15%)}.toy-train-rsvp-page{position:relative;overflow-x:hidden;background:linear-gradient(rgb(43 120 197/5%) 1px,transparent 1px),linear-gradient(90deg,rgb(43 120 197/5%) 1px,transparent 1px),var(--train-cream);background-size:24px 24px}.toy-train-boarding-pass,.toy-train-rsvp-state{position:relative;overflow:hidden;border:3px solid var(--train-blue);border-radius:1.35rem;background:var(--train-paper);box-shadow:0 10px 0 rgb(22 39 68/12%),0 24px 55px rgb(22 39 68/12%);padding:clamp(1.1rem,4vw,2rem)}.toy-train-boarding-pass:before,.toy-train-rsvp-state:before{position:absolute;top:0;right:0;left:0;height:.55rem;background:repeating-linear-gradient(90deg,var(--train-red) 0 2rem,white 2rem 3rem,var(--train-blue) 3rem 5rem,white 5rem 6rem);content:""}.toy-train-rsvp-back{display:inline-flex;min-height:44px;max-width:100%;align-items:center;overflow-wrap:anywhere}.toy-train-rsvp-mini-header{display:flex;align-items:center;gap:.9rem;border-bottom:2px dashed var(--train-gold);padding-block:.45rem 1.2rem}.toy-train-rsvp-mini-badge,.toy-train-rsvp-mini-header img{width:4rem;height:4rem;flex:none;border:3px solid white;border-radius:.8rem;object-fit:cover;box-shadow:0 4px 0 rgb(22 39 68/12%)}.toy-train-rsvp-mini-header div{min-width:0}.toy-train-rsvp-mini-header p{overflow:hidden;font-family:Public Sans,sans-serif;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.toy-train-rsvp-mini-header span,.toy-train-rsvp-mini-header time{display:block;color:var(--train-muted);font-size:.78rem}.toy-train-rsvp-heading{margin-top:1.5rem;text-align:center}.toy-train-rsvp-heading h1{font-size:clamp(1.8rem,7vw,3rem);line-height:1.05}.toy-train-rsvp-heading>p{margin-top:.55rem;color:var(--train-muted)}.toy-train-rsvp-greeting{color:var(--train-blue-deep)!important;font-weight:800}.toy-train-rsvp-deadline{font-size:.82rem;font-weight:700}.toy-train-rsvp-personal-note{margin-top:1.1rem;border:2px dashed var(--train-gold);border-radius:.8rem;background:#fff9d9;padding:.9rem;color:var(--train-ink);font-style:italic;white-space:pre-wrap}.toy-train-rsvp-privacy{margin-top:1rem;color:var(--train-muted);font-size:.76rem;text-align:center}.toy-train-rsvp-form{margin-top:1.5rem}.toy-train-rsvp-form button,.toy-train-rsvp-form input,.toy-train-rsvp-form select,.toy-train-rsvp-form textarea{min-height:44px}.toy-train-rsvp-form input:focus-visible,.toy-train-rsvp-form select:focus-visible,.toy-train-rsvp-form textarea:focus-visible{outline:3px solid var(--train-yellow);outline-offset:2px}.toy-train-rsvp-state{width:min(100%,34rem);margin:auto;padding-block:3rem;text-align:center}.toy-train-rsvp-state-icon{width:6rem;height:6rem;margin-inline:auto}.toy-train-rsvp-state h1{margin-top:1rem;font-size:clamp(1.7rem,6vw,2.6rem);line-height:1.1}.toy-train-rsvp-state>p{max-width:28rem;margin:.8rem auto 0;color:var(--train-muted);line-height:1.6}.toy-train-rsvp-state>a{display:inline-flex;min-height:44px;align-items:center;justify-content:center;margin-top:1.6rem}.toy-train-rsvp-state-success{border-color:#27856f;background:#f2fff9}.toy-train-rsvp-state-invalid-code{border-color:var(--train-red);background:#fff4f1}.toy-train-rsvp-loading{width:min(100%,28rem);margin:auto;text-align:center}.toy-train-loading-wheel{display:block;width:3rem;height:3rem;margin:0 auto .8rem;border:6px solid var(--train-yellow);border-top-color:var(--train-red);border-radius:50%;animation:toy-train-wheel .9s linear infinite}.toy-train-nav :focus-visible,.toy-train-page :focus-visible,.toy-train-rsvp-page :focus-visible{outline:3px solid var(--train-yellow);outline-offset:3px}@media (hover:hover) and (pointer:fine){.toy-train-photo-window:hover{z-index:2;transform:translateY(-.45rem) rotateY(-3deg)}}@media (min-width:640px){.toy-train-departure-ticket{grid-template-columns:auto 1fr 1fr;padding:1rem 1.2rem}.toy-train-departure-ticket>div+div{border-left:2px dashed var(--train-gold);padding-left:1rem}.toy-train-hero-portrait{width:6.5rem;height:6.5rem}}@media (max-width:767px){.toy-train-nav-rsvp{display:none}.toy-train-route{width:min(100% - 1rem,40rem)}.toy-train-rails{left:.65rem;width:2.75rem;transform:none}.toy-train-route-locomotive{left:2.025rem}.toy-train-station{min-height:auto;padding:2.2rem 0 2.2rem 4rem}.toy-train-station-center .toy-train-station-platform,.toy-train-station-platform{width:100%;margin:0}.toy-train-station-center .toy-train-station-platform:after,.toy-train-station-platform:after{display:block;top:2.4rem;left:-1.75rem;width:1.75rem}.toy-train-platform-lamp,.toy-train-station-center .toy-train-platform-lamp,.toy-train-station-left .toy-train-platform-lamp,.toy-train-station-right .toy-train-platform-lamp{top:1.4rem;left:-2.55rem;width:.9rem;height:2rem}}.toy-train-route[data-train-motion-ready=true][data-train-station-count="0"] .toy-train-rails,.toy-train-route[data-train-motion-ready=true][data-train-station-count="0"] .toy-train-route-locomotive{display:none}@media (min-width:768px){.toy-train-menu-button,.toy-train-mobile-menu{display:none}.toy-train-nav-links{display:flex}.toy-train-brand span{max-width:12rem}.toy-train-hero-inner{padding-block:2.5rem 3rem}.toy-train-hero-scene{height:12rem}.toy-train-engine{width:16rem;height:8rem}.toy-train-engine-boiler{width:11rem;height:4.7rem}.toy-train-engine-cab{width:6.4rem;height:6.4rem}.toy-train-wheel{width:3.2rem;height:3.2rem}.toy-train-photo-car{padding-inline:1rem}.toy-train-photo-window{width:min(32vw,19rem)}}@media (min-width:1024px){.toy-train-brand span{max-width:18rem}.toy-train-station-left .toy-train-station-platform{transform:perspective(1000px) rotateY(3deg)}.toy-train-station-right .toy-train-station-platform{transform:perspective(1000px) rotateY(-3deg)}.toy-train-wishes-car{grid-template-columns:repeat(2,1fr)}}@media (max-width:374px){.toy-train-gutter{width:min(100% - 1rem,76rem)}.toy-train-brand span{max-width:10.5rem;font-size:.9rem}.toy-train-hero-inner{width:min(100% - 1rem,70rem)}.toy-train-station-content{padding:1rem}.toy-train-departure-ticket{gap:.55rem}.toy-train-countdown span{min-width:3.1rem}.toy-train-rsvp-page{padding-inline:.65rem!important}}@keyframes toy-train-arrive{0%{opacity:0;transform:translateX(-120vw) translateZ(-80px) scale(.7)}to{opacity:1;transform:translateX(-50%) translateZ(25px) scale(1)}}@keyframes toy-train-wheel{to{transform:rotate(1turn)}}@keyframes toy-train-track-wheel-roll{to{background-position-y:.84rem}}@keyframes toy-train-steam{0%{opacity:.85;transform:translate(0) scale(.6)}to{opacity:0;transform:translate(1.4rem,-3rem) scale(2.2)}}@keyframes toy-train-lamp{50%{box-shadow:0 0 28px var(--train-yellow);filter:brightness(1.15)}}@keyframes toy-train-cloud-drift{to{transform:translateX(2.5rem)}}@keyframes toy-train-spark{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateX(0) scale(0)}30%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateX(9rem) scale(1)}}@media (prefers-reduced-motion:reduce){.toy-train-page *,.toy-train-page :after,.toy-train-page :before,.toy-train-rsvp-page *,.toy-train-rsvp-page :after,.toy-train-rsvp-page :before{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.toy-train-station{opacity:1!important;transform:none!important}.toy-train-engine{opacity:1!important;transform:translateX(-50%)!important}.toy-train-clouds,.toy-train-sparks,.toy-train-steam{display:none!important}.toy-train-photo-window,.toy-train-station-platform{transform:none!important}.toy-train-rail-progress{height:100%}}@media (prefers-reduced-data:reduce){.toy-train-clouds,.toy-train-sparks{display:none}}