@import"https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&family=Inter:wght@400;500;600;700&display=swap";:root{--font-heading: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--brand-green: #15803d;--brand-green-hover: #166534;--brand-green-dark: #0f4a25;--brand-green-light: #dcfce7;--brand-green-subtle: #f0fdf4;--accent-yellow: #f59e0b;--accent-yellow-light: #fef3c7;--accent-yellow-dark: #b45309;--accent-blue: #0284c7;--accent-blue-light: #e0f2fe;--text-title: #0f172a;--text-body: #334155;--text-location: #64748b;--text-muted: #94a3b8;--bg-page: #f8fafc;--bg-card: #ffffff;--bg-subtle: #f1f5f9;--border-subtle: #e2e8f0;--border-focus: #15803d;--price-color: #047857;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .02);--shadow-card: 0 4px 18px rgba(0, 0, 0, .06), 0 1px 3px rgba(0, 0, 0, .04);--shadow-card-hover: 0 14px 34px rgba(0, 0, 0, .1), 0 4px 10px rgba(0, 0, 0, .05);--shadow-modal: 0 20px 45px -10px rgba(15, 23, 42, .25), 0 10px 20px -5px rgba(15, 23, 42, .1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .16s ease;--transition-normal: .26s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{width:100%;max-width:100vw;overflow-x:hidden;position:relative;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--bg-page);color:var(--text-body);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;max-width:100vw;overflow-x:hidden;position:relative;min-height:100vh}#root,.app-root{width:100%;max-width:100vw;overflow-x:hidden;min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-title);line-height:1.25;font-weight:700}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:1240px;margin:0 auto;padding:0 16px;box-sizing:border-box}@media(max-width:640px){.container{padding:0 12px}}.glass-header{background:#ffffffe0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(226,232,240,.8)}.glass-card{background:#ffffffeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.7)}.badge-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--radius-full);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.badge-green{background:var(--brand-green-light);color:var(--brand-green)}.badge-yellow{background:var(--accent-yellow-light);color:var(--accent-yellow-dark)}.badge-blue{background:var(--accent-blue-light);color:var(--accent-blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-heading);font-weight:700;font-size:.95rem;padding:12px 22px;border-radius:var(--radius-md);transition:all var(--transition-normal);cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--brand-green),#0d6e30);color:#fff;box-shadow:0 4px 14px #15803d47}.btn-primary:hover{background:linear-gradient(135deg,#166534,#0b5324);transform:translateY(-2px);box-shadow:0 6px 20px #15803d61}.btn-secondary{background:#fff;color:var(--text-title);border:1px solid var(--border-subtle)}.btn-secondary:hover{background:var(--bg-subtle);border-color:#cbd5e1}.btn-accent{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 14px #f59e0b4d}.btn-accent:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-2px);box-shadow:0 6px 18px #f59e0b66}.toast-fixed-wrap{position:fixed;bottom:24px;right:24px;z-index:1000;pointer-events:none}.toast-box{pointer-events:auto;display:flex;align-items:center;gap:12px;background:#0f172a;color:#f8fafc;padding:14px 20px;border-radius:var(--radius-md);box-shadow:var(--shadow-modal);animation:toastSlideUp .3s ease-out;font-size:.92rem;font-weight:500}.toast-box.success{border-left:4px solid #22c55e}.toast-box.info{border-left:4px solid #38bdf8}.toast-box.warning{border-left:4px solid #f59e0b}@keyframes toastSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.site-navbar{position:sticky;top:0;z-index:100;height:74px}.navbar-container{display:flex;align-items:center;justify-content:space-between;height:100%}.brand-logo-link{display:flex;align-items:center;gap:10px}.brand-logo-icon{width:42px;height:42px;background:linear-gradient(135deg,var(--brand-green),#0d6e30);color:#fff;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #15803d40}.brand-title{font-family:var(--font-heading);font-weight:800;font-size:1.45rem;color:var(--text-title);letter-spacing:-.02em}.brand-title span{color:var(--brand-green)}.navbar-menu{display:flex;align-items:center;gap:28px}.nav-item-link{font-weight:600;font-size:.92rem;color:var(--text-body);display:flex;align-items:center;gap:6px;transition:color var(--transition-fast)}.nav-item-link:hover{color:var(--brand-green)}.nav-item-link svg{color:var(--brand-green)}.nav-actions{display:flex;align-items:center;gap:14px}.cart-pill-btn{display:flex;align-items:center;gap:10px;background:var(--brand-green-subtle);color:var(--brand-green);border:1px solid var(--brand-green-light);padding:8px 16px;border-radius:var(--radius-full);font-weight:700;font-size:.92rem;transition:all var(--transition-normal);position:relative}.cart-pill-btn:hover{background:var(--brand-green-light);transform:translateY(-1px)}.cart-count-badge{background:var(--brand-green);color:#fff;font-size:.76rem;padding:2px 7px;border-radius:var(--radius-full);min-width:20px;text-align:center}.mobile-menu-trigger{display:none;width:40px;height:40px;align-items:center;justify-content:center;color:var(--text-title);border-radius:var(--radius-sm);transition:background var(--transition-fast)}.mobile-menu-trigger:hover{background:var(--bg-subtle)}.mobile-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:200;animation:overlayFadeIn .22s ease forwards}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.mobile-drawer-content{position:fixed;top:0;right:0;width:min(340px,88vw);height:100dvh;background:#fff;box-shadow:-8px 0 40px #0f172a2e;display:flex;flex-direction:column;animation:drawerSlideIn .28s cubic-bezier(.16,1,.3,1) forwards;overflow:hidden;z-index:201}@keyframes drawerSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-subtle);background:#fff}.mobile-drawer-header .brand-title{font-size:1.3rem}.mobile-drawer-header>button{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-title);transition:background var(--transition-fast)}.mobile-drawer-header>button:hover{background:var(--bg-subtle)}.mobile-drawer-links{flex:1;display:flex;flex-direction:column;padding:16px 20px 24px;gap:4px;overflow-y:auto}.mobile-drawer-links>button:not(.btn){display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border-radius:var(--radius-md);font-size:1rem;font-weight:600;color:var(--text-title);text-align:left;transition:background var(--transition-fast),color var(--transition-fast)}.mobile-drawer-links>button:not(.btn):hover{background:var(--brand-green-subtle);color:var(--brand-green)}.mobile-drawer-links>.btn{margin-top:12px;width:100%;padding:14px;font-size:1rem;color:#fff!important}@media(max-width:768px){.navbar-menu{display:none}.mobile-menu-trigger{display:flex}}.hero-wrapper{position:relative;background:radial-gradient(circle at 10% 20%,#f0fdf4,#fff 60%,#f8fafc);border-bottom:1px solid var(--border-subtle);padding:60px 0 50px;overflow:hidden}.hero-top-badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #bbf7d0;box-shadow:0 2px 8px #15803d14;padding:6px 14px;border-radius:var(--radius-full);font-size:.82rem;font-weight:700;color:var(--brand-green);margin-bottom:20px}.hero-title{font-size:3rem;font-weight:800;letter-spacing:-.03em;color:var(--text-title);max-width:820px;margin-bottom:18px}.hero-title span{background:linear-gradient(135deg,var(--brand-green),#047857);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.15rem;color:var(--text-location);max-width:680px;margin-bottom:32px}.hero-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px}.search-input-box{flex:1;min-width:260px;position:relative}.search-input-box svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.search-input-box input{width:100%;padding:13px 14px 13px 44px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:.95rem;outline:none;background:#fff;transition:border-color var(--transition-fast)}.search-input-box input:focus{border-color:var(--brand-green);box-shadow:0 0 0 3px #15803d1f}.category-filter-chips{display:flex;flex-wrap:wrap;gap:8px}.category-chip{padding:8px 16px;border-radius:var(--radius-full);font-size:.86rem;font-weight:600;background:#fff;color:var(--text-body);border:1px solid var(--border-subtle);transition:all var(--transition-fast)}.category-chip:hover{border-color:var(--brand-green);color:var(--brand-green)}.category-chip.active{background:var(--brand-green);color:#fff;border-color:var(--brand-green);box-shadow:0 2px 8px #15803d40}.trust-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px;padding-top:30px;border-top:1px solid var(--border-subtle)}.stat-item{display:flex;align-items:center;gap:12px}.stat-icon{width:42px;height:42px;border-radius:50%;background:var(--brand-green-subtle);color:var(--brand-green);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-text strong{display:block;font-size:.95rem;color:var(--text-title)}.stat-text span{font-size:.8rem;color:var(--text-location)}.section-padding{padding:60px 0}.section-header-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:34px}.section-title{font-size:2.1rem;font-weight:800;letter-spacing:-.02em}.section-subtitle{color:var(--text-location);font-size:1rem;margin-top:6px}.parks-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.park-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);overflow:hidden;box-shadow:var(--shadow-sm);transition:all var(--transition-normal);display:flex;flex-direction:column}.park-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-card-hover);border-color:#cbd5e1}.park-card-img-wrap{position:relative;height:220px;overflow:hidden;background:#0f172a}.park-card-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.park-card:hover .park-card-img-wrap img{transform:scale(1.05)}.park-card-floating-badge{position:absolute;top:14px;left:14px;background:#0f172abf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:var(--radius-full)}.park-card-discount-badge{position:absolute;top:14px;right:14px;background:#dc2626;color:#fff;font-size:.78rem;font-weight:800;padding:4px 10px;border-radius:var(--radius-full);box-shadow:0 2px 8px #dc262659}.park-card-body{padding:22px;display:flex;flex-direction:column;flex:1}.park-meta-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:.82rem;color:var(--text-location)}.park-card-name{font-size:1.35rem;font-weight:800;margin-bottom:6px;color:var(--text-title)}.park-card-tagline{font-size:.88rem;color:var(--text-location);margin-bottom:18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.park-pricing-box{background:var(--bg-subtle);border-radius:var(--radius-md);padding:12px 16px;margin-top:auto;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between}.price-col-gate{font-size:.82rem;color:var(--text-muted)}.price-col-gate strike{font-weight:600}.price-col-online{text-align:right}.price-col-online .label{font-size:.74rem;color:var(--brand-green);font-weight:700;text-transform:uppercase}.price-col-online .price{font-size:1.35rem;font-weight:900;color:var(--brand-green);font-family:var(--font-heading)}.park-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aa6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto;animation:fadeIn .2s ease}.modal-dialog-large{background:#fff;border-radius:var(--radius-xl);max-width:980px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-modal);position:relative;display:flex;flex-direction:column}.modal-close-btn{position:absolute;top:18px;right:18px;width:36px;height:36px;background:#0f172a99;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;transition:background var(--transition-fast)}.modal-close-btn:hover{background:#0f172ae6}.detail-gallery-hero{position:relative;height:340px;background:#0f172a}.detail-gallery-hero img{width:100%;height:100%;object-fit:cover}.detail-gallery-thumbs{position:absolute;bottom:14px;left:20px;display:flex;gap:8px}.thumb-btn{width:54px;height:40px;border-radius:6px;overflow:hidden;border:2px solid transparent;opacity:.75;transition:all var(--transition-fast)}.thumb-btn.active{border-color:#fff;opacity:1;transform:scale(1.05)}.thumb-btn img{width:100%;height:100%;object-fit:cover}.detail-body-content{padding:30px}.detail-grid-layout{display:grid;grid-template-columns:1fr 340px;gap:30px}.detail-info-block{margin-bottom:24px}.detail-info-block h3{font-size:1.25rem;margin-bottom:12px}.tier-selection-card{background:#fff;border:1.5px solid var(--border-subtle);border-radius:var(--radius-lg);padding:18px 20px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;transition:all var(--transition-fast)}.tier-selection-card:hover{border-color:#86efac;box-shadow:0 4px 14px #0000000d}.tier-selection-card.tier-card-active{border-color:var(--brand-green);background:#f0fdf4;box-shadow:0 4px 16px #16a34a1f}.tier-info-col{flex:1}.tier-action-col{display:flex;align-items:center;gap:12px;flex-shrink:0}.tier-buy-btn{padding:9px 18px;font-size:.9rem;font-weight:700;display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-md);white-space:nowrap}.compact-date-selector-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:10px 14px;background:var(--bg-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.date-selector-current{display:flex;align-items:center;gap:8px;font-size:.88rem}.park-hero-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}.park-hero-status-badge{font-size:.78rem;padding:4px 10px}.breadcrumb-back-link{color:#86efac!important;font-weight:700!important;font-size:.86rem!important}.breadcrumbs-desktop-trail{display:inline-flex;align-items:center;gap:6px;margin-left:6px}.breadcrumb-sep{color:#64748b;font-size:.8rem}.tier-qty-controls{display:flex;align-items:center;gap:10px}.qty-btn{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--bg-subtle);color:var(--text-title);display:flex;align-items:center;justify-content:center;font-weight:800;transition:background var(--transition-fast)}.qty-btn:hover{background:#e2e8f0}.cart-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;display:flex;justify-content:flex-end}.cart-drawer-panel{width:100%;max-width:440px;background:#fff;height:100%;height:100dvh;display:flex;flex-direction:column;box-shadow:-10px 0 30px #00000026;animation:slideLeft .3s cubic-bezier(.16,1,.3,1)}.cart-drawer-header{padding:20px 24px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.cart-close-btn{width:36px;height:36px;border-radius:50%;background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-title);transition:all var(--transition-fast);cursor:pointer}.cart-close-btn:hover{background:#e2e8f0}.cart-drawer-items{flex:1;overflow-y:auto;padding:20px 24px}.cart-item-row{display:flex;gap:14px;padding:14px 0;border-bottom:1px dashed var(--border-subtle)}.cart-item-info{flex:1}.cart-drawer-footer{padding:20px 24px calc(20px + env(safe-area-inset-bottom,0px));background:var(--bg-subtle);border-top:1px solid var(--border-subtle)}.checkout-wrapper{padding:50px 0 80px;min-height:calc(100vh - 74px)}.checkout-grid{display:grid;grid-template-columns:1fr 380px;gap:32px}.checkout-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);padding:28px;box-shadow:var(--shadow-sm)}.stepper-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid var(--border-subtle)}.stepper-divider{width:40px;height:1px;background:var(--border-subtle);flex-shrink:0}.step-item{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem;color:var(--text-muted)}.step-item.active{color:var(--brand-green)}.step-num{width:28px;height:28px;border-radius:50%;background:var(--bg-subtle);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800}.step-item.active .step-num{background:var(--brand-green);color:#fff;border-color:var(--brand-green)}.interactive-card-visual{width:100%;max-width:360px;height:200px;background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:16px;padding:22px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;margin:0 auto 24px;box-shadow:0 10px 25px #0f172a40;position:relative;overflow:hidden}.interactive-card-visual:before{content:"";position:absolute;top:-50%;right:-20%;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(21,128,61,.3),transparent 70%)}.card-visual-top{display:flex;justify-content:space-between;align-items:center}.card-chip{width:40px;height:28px;background:linear-gradient(135deg,#fbbf24,#d97706);border-radius:5px}.card-visual-number{font-family:monospace;font-size:1.25rem;letter-spacing:2px;text-shadow:0 1px 2px rgba(0,0,0,.6)}.card-visual-bottom{display:flex;justify-content:space-between;align-items:flex-end;font-size:.78rem}.card-visual-bottom strong{display:block;font-size:.9rem;text-transform:uppercase;letter-spacing:1px}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:.86rem;font-weight:600;color:var(--text-title);margin-bottom:6px}.form-input{width:100%;padding:11px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:.92rem;outline:none;font-family:inherit;transition:border-color var(--transition-fast)}.form-input:focus{border-color:var(--brand-green);box-shadow:0 0 0 3px #15803d1f}.form-row-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-row-2col-mobile{grid-template-columns:1fr 1fr!important;gap:12px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideLeft{0%{transform:translate(100%)}to{transform:translate(0)}}.ticket-success-wrapper{max-width:680px;margin:0 auto;padding:30px 20px}.ticket-success-card{background:#fff;border:1px solid #bbf7d0;border-radius:var(--radius-xl);padding:36px;box-shadow:var(--shadow-modal);text-align:center}.legal-content-card{background:#fff;border-radius:var(--radius-lg);padding:40px 48px;box-shadow:var(--shadow-card);border:1px solid var(--border-subtle);color:var(--text-body);line-height:1.7}.guarantee-box-card{background:#fff;border:1px solid #bbf7d0;border-radius:var(--radius-xl);padding:44px 36px;box-shadow:var(--shadow-card)}.park-dedicated-page{background:var(--bg-page);min-height:calc(100vh - 74px)}.park-hero-banner{position:relative;min-height:380px;display:flex;align-items:flex-end;padding:60px 0 40px;color:#fff;overflow:hidden;background:#0f172a}.park-hero-banner-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:brightness(.45)}.park-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0f172a4d,#0f172ad9)}.park-hero-container{position:relative;z-index:2;width:100%}.park-breadcrumbs{display:flex;align-items:center;gap:8px;font-size:.85rem;margin-bottom:16px;color:#cbd5e1}.breadcrumb-btn{color:#cbd5e1;font-size:.85rem;font-weight:600;transition:color .16s ease}.breadcrumb-btn:hover{color:#4ade80}.breadcrumb-current{color:#fff;font-weight:700}.park-page-title{font-size:3rem;font-weight:900;color:#fff;letter-spacing:-.02em;margin-bottom:10px}.park-page-tagline{font-size:1.15rem;color:#e2e8f0;max-width:760px;margin-bottom:22px;line-height:1.6}.park-page-meta-bar{display:flex;flex-wrap:wrap;align-items:center;gap:20px;font-size:.9rem;color:#f1f5f9}.meta-item{display:flex;align-items:center;gap:6px}.meta-item.rating-item{color:#fef08a}.meta-item.rating-item strong{color:#fff}.park-page-gallery-card{background:#fff;border-radius:var(--radius-xl);border:1px solid var(--border-subtle);overflow:hidden;box-shadow:var(--shadow-sm);margin-bottom:28px}.gallery-viewport{height:420px;background:#0f172a}.gallery-viewport img{width:100%;height:100%;object-fit:cover}.gallery-thumbs-row{display:flex;gap:12px;padding:16px;background:#f8fafc;border-top:1px solid var(--border-subtle)}.gallery-thumb-btn{width:80px;height:54px;border-radius:var(--radius-sm);overflow:hidden;border:2px solid transparent;opacity:.7;transition:all var(--transition-fast)}.gallery-thumb-btn.active{border-color:var(--brand-green);opacity:1;transform:scale(1.05)}.gallery-thumb-btn img{width:100%;height:100%;object-fit:cover}.park-content-card{background:#fff;border-radius:var(--radius-xl);border:1px solid var(--border-subtle);padding:32px;box-shadow:var(--shadow-sm);margin-bottom:28px}.highlights-grid{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.highlight-item{display:flex;align-items:center;gap:10px;font-size:.94rem;color:var(--text-body)}.highlight-check{width:22px;height:22px;border-radius:50%;background:var(--brand-green-light);color:var(--brand-green);display:flex;align-items:center;justify-content:center;flex-shrink:0}.pricing-table-wrapper{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;display:block;margin-top:14px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#fff}.pricing-comparison-table{width:100%;border-collapse:collapse}.pricing-comparison-table th{background:var(--bg-subtle);color:var(--text-title);font-weight:700;text-align:left;padding:12px 14px;font-size:.88rem;border-bottom:2px solid var(--border-subtle);white-space:nowrap}.pricing-comparison-table td{padding:14px;border-bottom:1px solid var(--border-subtle);font-size:.92rem;vertical-align:middle}.pricing-comparison-table tr:last-child td{border-bottom:none}.park-booking-card-sticky{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:26px;box-shadow:var(--shadow-card);position:sticky;top:94px;width:100%;max-width:100%;box-sizing:border-box}.detail-info-sections{margin-top:36px;display:flex;flex-direction:column;gap:24px;width:100%;max-width:100%;min-width:0}.mobile-floating-checkout-bar{display:none}.park-step-card{background:#fff;border-radius:var(--radius-xl);border:1.5px solid var(--border-subtle);padding:24px;margin-bottom:20px;box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast);width:100%;max-width:100%;box-sizing:border-box}.park-step-date-card{border:2px solid #86efac;background:#fff;position:relative}.step-badge-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.step-number-badge{background:var(--brand-green);color:#fff;font-size:.76rem;font-weight:800;padding:4px 10px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em}.step-status-tag{font-size:.76rem;color:var(--text-location);font-weight:600}.step-card-title{font-size:1.35rem;font-weight:900;color:var(--text-title);margin:0 0 4px}.step-card-subtitle{font-size:.88rem;color:var(--text-location);margin:0 0 16px;line-height:1.45}.step-date-selected-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:var(--radius-lg);margin-bottom:18px;flex-wrap:wrap;width:100%;box-sizing:border-box}.date-banner-left{display:flex;align-items:center;gap:12px}.date-icon-circle{width:40px;height:40px;border-radius:50%;background:#dcfce7;display:flex;align-items:center;justify-content:center;flex-shrink:0}.date-banner-label{display:block;font-size:.78rem;color:var(--text-location);font-weight:600}.date-banner-value{display:block;font-size:1.05rem;color:#14532d;font-weight:900;text-transform:capitalize}.btn-change-date-action{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;background:#fff;border:1.5px solid #86efac;border-radius:var(--radius-md);color:#166534;font-weight:700;font-size:.86rem;cursor:pointer;transition:all var(--transition-fast)}.btn-change-date-action:hover{background:#16a34a;color:#fff;border-color:#16a34a}.date-buttons-group{margin-bottom:14px}.date-buttons-helper{display:block;font-size:.8rem;color:var(--text-location);font-weight:700;margin-bottom:8px;text-transform:uppercase;letter-spacing:.03em}.date-chips-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%;box-sizing:border-box}.date-select-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 10px;background:#fff;border:1.5px solid #cbd5e1;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:center;box-sizing:border-box;min-width:0}.date-select-btn:hover{border-color:var(--brand-green);background:#f8fafc}.date-select-btn.active{background:var(--brand-green);border-color:var(--brand-green);box-shadow:0 4px 14px #16a34a47}.date-select-btn .date-select-day{font-size:.94rem;font-weight:800;color:var(--text-title);line-height:1.2}.date-select-btn.active .date-select-day{color:#fff}.date-select-btn .date-select-detail{font-size:.78rem;color:var(--text-location);margin-top:3px;font-weight:600}.date-select-btn.active .date-select-detail{color:#dcfce7}.date-select-btn-more{border-style:dashed}.calendar-expanded-container{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:var(--radius-lg);padding:16px;margin-top:14px;margin-bottom:14px;animation:revealPkg .25s ease forwards;width:100%;box-sizing:border-box}.calendar-expanded-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:.88rem;color:var(--text-title)}.calendar-close-link{font-size:.82rem;color:var(--brand-green);font-weight:700;background:none;border:none;cursor:pointer;text-decoration:underline}.date-card-footer-guarantee{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--text-location);padding-top:12px;border-top:1px solid var(--border-subtle);line-height:1.4}.sidebar-date-confirmed{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#f0fdf4;border:1.5px solid #86efac;border-radius:var(--radius-md);font-size:.84rem}.mini-calendar{background:#fff;border:1.5px solid #e5e7eb;border-radius:16px;padding:20px;box-shadow:0 4px 24px #00000012;-webkit-user-select:none;user-select:none;max-width:360px;width:100%;margin:0 auto;box-sizing:border-box}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.cal-month-label{font-weight:800;font-size:1.05rem;color:var(--text-title);text-transform:capitalize}.cal-nav-btn{width:34px;height:34px;border-radius:50%;border:1.5px solid #e5e7eb;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s;color:var(--text-title)}.cal-nav-btn:hover{background:#f0fdf4;border-color:var(--brand-green);color:var(--brand-green)}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.cal-weekdays span{text-align:center;font-size:.75rem;font-weight:700;color:var(--text-location);padding:4px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-day{width:100%;aspect-ratio:1;border:none;border-radius:10px;background:transparent;font-size:.88rem;font-weight:600;color:var(--text-title);cursor:pointer;transition:background .15s,color .15s,transform .1s;display:flex;align-items:center;justify-content:center}.cal-day:hover:not(:disabled):not(.cal-day--empty){background:#dcfce7;color:var(--brand-green);transform:scale(1.08)}.cal-day--empty{pointer-events:none;visibility:hidden}.cal-day--past{color:#d1d5db;cursor:not-allowed;font-weight:400}.cal-day--today{border:2px solid var(--brand-green);color:var(--brand-green);font-weight:900}.cal-day--selected{background:var(--brand-green)!important;color:#fff!important;font-weight:900;box-shadow:0 3px 10px #16a34a59;transform:scale(1.1)}.cal-hint{margin-top:12px;font-size:.72rem;color:var(--text-location);text-align:center}.btn-spinner{display:inline-block;width:18px;height:18px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:btnSpin .7s linear infinite;vertical-align:middle;flex-shrink:0}@keyframes btnSpin{to{transform:rotate(360deg)}}.btn-submitting{opacity:.9;cursor:wait!important;pointer-events:none;display:inline-flex;align-items:center;justify-content:center;gap:10px}@media(max-width:1024px){.parks-grid{grid-template-columns:repeat(2,1fr)}.detail-grid-layout{grid-template-columns:minmax(0,1fr)!important;gap:24px;width:100%;max-width:100%}.detail-main-col,.detail-sidebar-col,.detail-info-sections,.park-step-card,.park-content-card,.park-page-gallery-card{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}.mobile-floating-checkout-bar{display:flex;align-items:center;justify-content:space-between;position:fixed;bottom:0;left:0;right:0;width:100%;max-width:100%;box-sizing:border-box;background:#fffffffa;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1.5px solid #86efac;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));box-shadow:0 -6px 25px #00000024;z-index:990;animation:slideUpFloat .25s ease-out}.mobile-floating-info{display:flex;flex-direction:column;cursor:pointer}.mobile-floating-count{font-size:.78rem;color:var(--text-location);font-weight:600}.mobile-floating-price{font-size:1.35rem;font-weight:900;color:var(--brand-green);line-height:1.1}.mobile-floating-btn{padding:12px 22px;font-size:.98rem;border-radius:var(--radius-md);box-shadow:0 4px 14px #16653447;display:flex;align-items:center;gap:6px}@keyframes slideUpFloat{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.park-dedicated-page{padding-bottom:76px;width:100%;max-width:100%;overflow-x:hidden}}@media(max-width:768px){.navbar-menu{display:none}.mobile-menu-trigger{display:flex}.hero-wrapper{padding:16px 0 10px;background:radial-gradient(circle at 10% 20%,#f0fdf4,#fff 80%);width:100%;max-width:100%;overflow:hidden}.hero-top-badge{padding:3px 10px;font-size:.72rem;gap:6px;margin-bottom:6px}.hero-title{font-size:clamp(1.4rem,6vw,1.95rem)!important;line-height:1.25;letter-spacing:-.01em;margin-bottom:4px;word-break:break-word}.hero-subtitle{display:none!important}.hero-filter-bar{margin-top:10px;gap:8px;flex-direction:column;align-items:stretch;width:100%;max-width:100%}.search-input-box{width:100%;min-width:0}.search-input-box input{padding:10px 14px 10px 38px;font-size:16px!important;border-radius:var(--radius-full);box-shadow:0 1px 4px #0000000d;width:100%;box-sizing:border-box}.category-filter-chips{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:6px;padding:2px 14px 6px;margin:0 -14px;width:calc(100% + 28px);max-width:calc(100% + 28px);box-sizing:border-box;scrollbar-width:none}.category-filter-chips::-webkit-scrollbar{display:none}.category-chip{flex-shrink:0;white-space:nowrap;padding:6px 14px;font-size:.8rem}.trust-stats-row{display:none!important}.section-padding{padding:16px 0 36px}.section-header-row{margin-bottom:12px}.section-title{font-size:1.35rem}.section-subtitle{display:none}.park-card-img-wrap{height:180px}.park-card-body{padding:16px}.park-hero-banner{display:block;min-height:auto;padding:20px 0 18px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.park-breadcrumbs{margin-bottom:8px;font-size:.8rem;flex-wrap:wrap;gap:6px}.breadcrumbs-desktop-trail{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:#cbd5e1}.breadcrumb-btn{font-size:.8rem;color:#cbd5e1}.park-hero-title-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.park-page-title{font-size:clamp(1.4rem,5.5vw,1.85rem)!important;line-height:1.22;margin:0!important;color:#fff!important;word-break:break-word}.park-hero-status-badge{font-size:.7rem;padding:3px 8px}.park-page-tagline{display:block!important;font-size:.88rem!important;line-height:1.45;color:#e2e8f0!important;margin:6px 0 10px!important;max-width:100%}.park-page-meta-bar{display:flex!important;flex-direction:column;gap:6px;margin-top:8px;font-size:.82rem}.meta-item{display:flex!important;align-items:flex-start;gap:6px}.meta-item svg{flex-shrink:0;margin-top:3px}.meta-item-location,.meta-item-schedule{display:flex!important;color:#cbd5e1;font-size:.8rem;line-height:1.35}.park-dedicated-page .container,.park-main-container{padding:16px 14px 85px!important;width:100%;max-width:100%;box-sizing:border-box}.detail-info-sections{margin-top:20px;gap:16px;width:100%;max-width:100%;min-width:0}.park-step-card{padding:18px 14px!important;margin-bottom:14px!important;border-radius:var(--radius-lg);width:100%;max-width:100%;box-sizing:border-box}.step-badge-row{flex-wrap:wrap;gap:8px}.step-card-title{font-size:1.25rem!important}.step-card-subtitle{font-size:.84rem!important;margin-bottom:12px!important}.step-date-selected-banner{padding:12px!important;margin-bottom:14px!important;flex-direction:column;align-items:stretch;gap:10px;width:100%;box-sizing:border-box}.date-banner-left{width:100%}.btn-change-date-action{width:100%;justify-content:center;padding:9px 12px;font-size:.86rem}.date-chips-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important;width:100%;box-sizing:border-box}.date-select-btn{padding:10px 8px!important;width:100%;box-sizing:border-box}.date-select-btn .date-select-day{font-size:.88rem!important}.date-select-btn .date-select-detail{font-size:.74rem!important}.tier-selection-card{flex-direction:column!important;align-items:stretch!important;gap:12px!important;padding:14px!important;width:100%;max-width:100%;box-sizing:border-box}.tier-action-col{display:flex;align-items:center;justify-content:space-between;width:100%;padding-top:10px;border-top:1px dashed var(--border-subtle);flex-wrap:wrap;gap:8px}.tier-buy-btn{flex:1;justify-content:center;padding:10px 14px;font-size:.88rem}.gallery-viewport{height:220px!important;width:100%;border-radius:var(--radius-md);overflow:hidden}.gallery-thumbs-row{display:flex;gap:8px;padding:10px 12px!important;overflow-x:auto;width:100%;max-width:100%;box-sizing:border-box;-webkit-overflow-scrolling:touch}.gallery-thumb-btn{width:70px;height:50px;flex-shrink:0}.pricing-table-wrapper{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;display:block!important;box-sizing:border-box!important}.pricing-comparison-table{min-width:440px!important;width:100%}.highlights-grid{grid-template-columns:1fr}.parks-grid{grid-template-columns:1fr;gap:18px}.checkout-grid,.form-row-grid{grid-template-columns:1fr}input,select,textarea,.form-input,.search-input-box input{font-size:16px!important}.mobile-floating-checkout-bar{padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px))!important}}@media(max-width:640px){.stepper-nav{gap:8px;margin-bottom:20px;padding-bottom:16px}.stepper-divider{width:20px}.step-item{font-size:.82rem;gap:6px}.step-num{width:24px;height:24px;font-size:.75rem}.legal-content-card,.guarantee-box-card{padding:20px 14px}}@media(max-width:520px){.tier-selection-card{flex-direction:column;align-items:stretch;gap:12px}.tier-selection-card .tier-qty-controls{align-self:flex-end}}@media(max-width:480px){.cart-drawer-panel{max-width:100%!important;width:100%!important;right:0!important}.cart-drawer-header{padding:16px 18px}.cart-drawer-items{padding:14px 18px}.cart-drawer-footer{padding:16px 18px calc(16px + env(safe-area-inset-bottom,0px))}.checkout-card{padding:20px 14px}.checkout-wrapper{padding:20px 0 60px}.step-item:not(.active) .step-label{display:none}.stepper-divider{flex:1;max-width:36px}.interactive-card-visual{max-width:100%;width:100%;height:auto;aspect-ratio:1.586;padding:16px;margin-bottom:20px;box-sizing:border-box}.card-visual-number{font-size:1.05rem!important;letter-spacing:1.5px}.mini-calendar{padding:14px 8px;max-width:100%;width:100%;box-sizing:border-box}.cal-nav-btn{width:30px;height:30px}.cal-day{font-size:.8rem;border-radius:6px}.site-navbar .container{padding:0 12px}.cart-pill-btn{padding:6px 10px;font-size:.82rem;gap:5px}.ticket-success-wrapper{padding:16px 10px}.ticket-success-card{padding:20px 14px}}@media(max-width:360px){.date-chips-grid{grid-template-columns:1fr!important}.park-page-title{font-size:1.45rem!important}.container{padding:0 10px!important}.park-dedicated-page .container,.park-main-container{padding:14px 10px 85px!important}}
