:root{--bg: #FFFBF7;--bg-warm: #faf8f5;--bg-muted: #f3f0eb;--bg-cream: #F6F1EA;--bg-input: #f7f5f2;--jdt-red: #B91C1C;--navy: #0c2340;--navy-hover: #163a64;--navy-light: rgba(12, 35, 64, .04);--gold: #8B6E4A;--gold-accent: #B8956A;--gold-dim: #6d5838;--gold-light: rgba(184, 149, 106, .08);--gold-border: rgba(184, 149, 106, .25);--green: #0d7d6a;--text: rgba(26, 20, 14, .92);--text-2: #45453F;--text-3: #65615B;--border: rgba(0, 0, 0, .07);--border-hover: rgba(0, 0, 0, .15);--r: 4px;--r-lg: 8px;--r-sm: 2px;--shadow-ring: 0 0 0 1px rgba(0,0,0,.04);--shadow: var(--shadow-ring), 0 1px 2px rgba(0, 0, 0, .04), 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: var(--shadow-ring), 0 2px 4px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .08);--shadow-lg: var(--shadow-ring), 0 4px 12px rgba(0, 0, 0, .06), 0 16px 40px rgba(0, 0, 0, .1);--shadow-xl: var(--shadow-ring), 0 8px 16px rgba(0, 0, 0, .08), 0 24px 64px rgba(0, 0, 0, .14);--shadow-2xl: var(--shadow-ring), 0 12px 28px rgba(0,0,0,.12), 0 32px 80px rgba(0,0,0,.18);--ease: .35s cubic-bezier(.4, 0, .2, 1);--ease-spring: .6s cubic-bezier(.34, 1.56, .64, 1);--ease-out: .45s cubic-bezier(0, 0, .2, 1);--ease-smooth: .8s cubic-bezier(.25, .1, .25, 1);--ease-editorial: 1s cubic-bezier(.19, 1, .22, 1);--max-w: 1320px;--font: "Inter", "Noto Sans JP", -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "Crimson Pro", Georgia, "Times New Roman", serif;--mono: "JetBrains Mono", "Fira Code", monospace;--input-h: 52px;--input-h-sm: 36px;--input-h-lg: 56px;--input-pad-x: 14px;--input-pad-y: 12px;--input-pad-x-sm: 10px;--input-pad-y-sm: 6px;--input-placeholder: #9ca3af;--input-disabled-bg: #f3f0eb;--input-disabled-text: #9ca3af;--focus-ring: 0 0 0 2px #fff, 0 0 0 4px var(--gold);--focus-ring-error: 0 0 0 2px #fff, 0 0 0 4px var(--jdt-red);--error: #C13515;--error-bg: #FFF8F6;--stepper-btn-size: 32px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;scrollbar-gutter:stable;overflow-x:clip;touch-action:manipulation}img,video{max-width:100%;height:auto}body.no-scroll{overflow:hidden!important;height:100vh!important}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.75;letter-spacing:.02em;-webkit-font-smoothing:antialiased;overflow-x:clip;width:100%;opacity:1;transition:opacity .15s ease-in}nav{position:sticky;top:0;z-index:100;background:#fffbf7f7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:none;box-shadow:0 1px 3px #0000000a;height:72px}.nav-inner{max-width:var(--max-w, 1320px);margin:0 auto;padding:0 1.25rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;height:100%;gap:.75rem}.logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}.logo img{height:36px;width:auto}.why-section,.how-section,.journal-section,.proof-section,.cta-section,footer{content-visibility:auto;contain-intrinsic-size:auto 400px}.nav-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.nav-cart-btn{position:relative;background:none;border:none;color:var(--text-2);cursor:pointer;padding:.4rem;transition:color var(--ease);display:flex;align-items:center;justify-content:center;border-radius:50%}.nav-cart-btn:hover{color:var(--text);background:var(--bg-1)}.nav-menu-btn{display:flex;align-items:center;gap:.5rem;background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:.3rem .35rem .3rem .65rem;cursor:pointer;transition:box-shadow .15s,border-color .15s;position:relative}.nav-menu-btn:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--border-hover)}.nav-menu-lines{color:var(--text-2);flex-shrink:0}.nav-menu-avatar{width:28px;height:28px;border-radius:50%;background:var(--text-3);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;flex-shrink:0;overflow:visible;position:relative}.nav-menu-avatar.identified{background:var(--navy)}.nav-menu-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.nav-menu{display:none;position:absolute;top:56px;right:1.25rem;width:260px;max-height:calc(100vh - 72px);overflow-y:auto;overscroll-behavior:contain;background:var(--bg);border-radius:var(--r-lg);box-shadow:0 4px 20px #0000001f;border:1px solid var(--border);padding:.4rem 0;z-index:200;list-style:none}.nav-menu.open{display:block}.nav-menu a{display:block;color:var(--text-2);text-decoration:none;padding:.65rem 1.1rem;font-size:.85rem;font-weight:500;transition:background .1s}@media(hover:hover){.nav-menu a:hover{background:var(--bg-warm);color:var(--text)}}.nav-menu-section{padding:0}.nav-menu-section a{font-weight:600;color:var(--text)}.nav-menu-section:empty{display:none}.nav-menu-section:empty+.nav-menu-divider{display:none}.nav-menu-divider{height:1px;background:var(--border);margin:.3rem 0}.nav-menu-phone{color:var(--navy)!important;font-weight:600!important}.nav-menu-sub{padding-left:1.8rem!important;font-weight:400!important;color:var(--text-3)!important;font-size:.82rem!important}.nav-menu-signout{color:var(--text-3)!important;font-weight:400!important}@media(min-width:960px){.nav-menu-mobile-only{display:none}}.cart-badge{position:absolute;top:-3px;right:-5px;background:var(--jdt-red);color:#fff;font-size:.55rem;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.hero-slider{position:relative;height:88vh;min-height:560px;max-height:960px;overflow:hidden}.hero-slides{position:relative;height:100%}.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;z-index:1;transition:opacity 1.2s ease}.hero-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-slide.active{opacity:1;z-index:2}.hero-slide-overlay{position:absolute;inset:0;background:linear-gradient(160deg,#0c2340a6,#0003 45%,#00000005 75%);display:flex;flex-direction:column;justify-content:center;padding:6rem}.hero-slide-overlay h1,.hero-slide-overlay h2,.hero-slide-overlay p,.hero-slide-overlay .hero-kicker,.hero-slide-overlay .btn{max-width:480px}.hero-kicker{display:inline-block;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;color:#fff;padding:0;border-radius:0;border:none;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;margin-bottom:1.25rem;width:fit-content;text-shadow:0 1px 4px rgba(0,0,0,.3)}.hero-kicker:before{content:"";display:inline-block;width:28px;height:1px;background:var(--gold-light, rgba(184, 149, 106, .7));vertical-align:middle;margin-right:.75rem}.hero-slide-overlay h1,.hero-slide-overlay h2{font-family:var(--font-display);font-size:clamp(2.4rem,5.5vw,3.8rem);font-weight:600;line-height:1.08;margin-bottom:1rem;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.35);letter-spacing:-.01em}.hero-slide-overlay p{font-size:clamp(.9rem,2vw,1rem);color:#ffffffe0;line-height:1.7;margin-bottom:1.5rem;text-shadow:0 1px 6px rgba(0,0,0,.25)}.hero-slide-overlay .btn-primary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5);letter-spacing:.06em;padding:.75rem 2rem;transition:all .4s ease}.hero-slide-overlay .btn-primary:hover{background:#ffffff1f;border-color:#fffc;box-shadow:none}.hero-dots{position:absolute;bottom:.5rem;left:50%;transform:translate(-50%);display:flex;gap:0;z-index:10}.hero-dot{width:44px;height:44px;border-radius:50%;background:transparent;cursor:pointer;transition:var(--ease);border:none;padding:0;position:relative;display:flex;align-items:center;justify-content:center}.hero-dot:after{content:"";width:8px;height:8px;border-radius:50%;background:#ffffff4d;transition:var(--ease)}.hero-dot.active:after{background:#fff;transform:scale(1.15)}.hero-dot:hover:after{background:#ffffff80}.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:#00000026;color:#fff;border:none;font-size:1.8rem;width:40px;height:56px;cursor:pointer;transition:background .3s ease;display:flex;align-items:center;justify-content:center}.hero-arrow:hover{background:#00000059}.hero-prev{left:0;border-radius:0 var(--r) var(--r) 0}.hero-next{right:0;border-radius:var(--r) 0 0 var(--r)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.8rem 2.25rem;border-radius:100px;font-size:.83rem;font-weight:600;text-decoration:none;cursor:pointer;border:none;transition:all var(--ease);font-family:var(--font);letter-spacing:.05em}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{background:var(--navy-hover);box-shadow:0 4px 16px #0c234040;transform:translateY(-1px)}.btn-secondary{background:var(--bg-muted);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--border-hover);background:var(--bg-warm)}.btn-sm{font-size:.78rem;padding:.45rem .9rem;min-height:36px}.nav-search-pill{display:flex;align-items:center;gap:.5rem;justify-self:center;width:100%;max-width:520px;background:var(--bg);border:1px solid var(--border);border-radius:100px;padding:.45rem 1rem;font-size:.82rem;font-weight:500;color:var(--text-2);cursor:pointer;box-shadow:0 1px 4px #00000014;transition:box-shadow .2s,border-color .2s;font-family:var(--font);overflow:hidden}.nav-search-pill:hover{box-shadow:0 2px 8px #0000001f;border-color:var(--border-hover)}.nsp-icon{flex-shrink:0;color:var(--jdt-red)}.nsp-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nsp-sep{width:1px;height:16px;background:var(--border);flex-shrink:0}.nsp-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-3);font-size:.78rem}.nsp-meta,.nsp-sep{display:none}@media(min-width:540px){.nsp-meta,.nsp-sep{display:inline-flex}}.nav-search-dropdown{position:fixed;top:64px;left:0;right:0;z-index:90;background:var(--bg);border-bottom:1px solid var(--border);box-shadow:0 8px 32px #0000001a;padding:1rem 1.25rem;transform:translateY(-8px);opacity:0;pointer-events:none;transition:transform .2s ease,opacity .2s ease}.nav-search-dropdown.open{transform:translateY(0);opacity:1;pointer-events:auto}.nav-search-dropdown .search-bar{max-width:720px;margin:0 auto;overflow:visible}.nav-search-apply{display:flex;justify-content:center;margin-top:.75rem}.nav-search-apply .btn{min-width:160px}.mobile-search-overlay{display:none}.category-band{position:sticky;top:64px;z-index:60;background:var(--bg);border-bottom:1px solid var(--border);min-height:44px}.search-bar{display:flex;align-items:stretch;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-md);position:relative;transform:scale(1);transition:box-shadow .25s cubic-bezier(.2,0,0,1),border-color .2s ease,transform .25s cubic-bezier(.2,0,0,1)}.search-bar:focus-within,.search-bar.search-focused{box-shadow:var(--shadow-lg);border-color:#0000001f;transform:scale(1.012);transition:box-shadow .25s cubic-bezier(.2,0,0,1),border-color .2s ease,transform .25s cubic-bezier(.2,0,0,1)}.search-bar>:first-child{border-radius:var(--r-lg) 0 0 var(--r-lg)}.search-bar>:last-child{border-radius:0 var(--r-lg) var(--r-lg) 0}.search-field{flex:1 1 0;min-width:0;background:var(--bg);padding:.6rem 1.1rem;transition:background var(--ease),outline var(--ease);outline:2px solid transparent;outline-offset:-2px}.search-field:hover{background:var(--bg-warm)}.search-field:focus-within{outline-color:var(--navy);background:var(--bg-warm)}.search-date,.search-duration{flex:0 0 auto;width:170px}.search-field label{display:block;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:.2rem}.search-field select,.search-field input{width:100%;padding:.4rem 0;border:none;font-size:1rem;font-family:var(--font);color:var(--text);background:transparent;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;line-height:1.4}.search-field select{cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right .1rem center;padding-right:1.4rem;transition:color var(--ease)}.search-field select:hover{color:var(--navy)}.cs-wrap{position:relative;display:inline-flex;width:100%}.cs-wrap>select{position:absolute;opacity:0;width:0;height:0;pointer-events:none;overflow:hidden}.cs-hidden{display:none}.cs-trigger{display:flex;align-items:center;gap:.4rem;width:100%;border:none;font-family:var(--font);color:var(--text);background:transparent;cursor:pointer;text-align:left;line-height:1.4;padding:0;margin:0}.cs-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-chevron{flex-shrink:0;width:12px;height:12px;color:var(--text-3);transition:transform .2s ease}.cs-wrap.cs-open .cs-chevron{transform:rotate(180deg)}.cs-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;width:max-content;max-width:280px;background:var(--bg);border:1px solid rgba(0,0,0,.06);border-radius:12px;box-shadow:0 12px 36px #0000001f,0 2px 6px #0000000a;max-height:220px;overflow-y:auto;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .15s ease,transform .15s ease;z-index:200;padding:4px;overscroll-behavior:contain}.cs-wrap.cs-open .cs-menu{opacity:1;transform:translateY(0);pointer-events:auto}.cs-item{padding:.5rem .75rem;cursor:pointer;font-size:.88rem;font-family:var(--font);color:var(--text-2);border-radius:8px;transition:background .1s ease;white-space:nowrap}.cs-item:hover{background:#0000000a}.cs-item.cs-active{color:var(--navy);font-weight:600;background:#1e3a5f0f}.cs-menu::-webkit-scrollbar{width:4px}.cs-menu::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px}.sp-trigger{display:flex;align-items:center;gap:.4rem;width:100%;padding:.4rem 0;font-size:1rem;font-family:var(--font);color:var(--text);background:transparent;border:none;cursor:pointer;text-align:left;line-height:1.4}.sp-trigger:hover{color:var(--navy)}.cs-sm .cs-trigger{padding:.3rem .5rem;font-size:.72rem;border:1px solid var(--border);border-radius:6px;min-height:32px;background:var(--bg-input, #fff)}.cs-sm .cs-trigger:hover{border-color:var(--border-hover)}.cs-sm .cs-menu{font-size:.78rem;min-width:120px}.cs-sm .cs-item{padding:.4rem .6rem;font-size:.78rem}.cs-form .cs-trigger{padding:.55rem .75rem;font-size:.88rem;border:1px solid var(--border);border-radius:var(--r);background:var(--bg-input, #fff)}.cs-form .cs-trigger:hover{border-color:var(--border-hover)}.search-panel{max-width:720px;margin:0 auto;overflow:hidden;max-height:0;opacity:0;transition:max-height .25s ease,opacity .2s ease,margin .25s ease}.search-panel.sp-open{max-height:320px;opacity:1;margin-top:.75rem}.sp-inner{padding:1rem;background:var(--bg-warm, #faf8f5);border-radius:12px;border:1px solid rgba(0,0,0,.05)}.sp-year{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:.4rem}.sp-year:not(:first-child){margin-top:.75rem}.sp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.sp-btn{padding:.45rem .2rem;text-align:center;font-size:.82rem;font-family:var(--font);border-radius:8px;cursor:pointer;border:1px solid transparent;background:var(--bg);color:var(--text);transition:all .12s ease}.sp-btn:hover:not(.sp-disabled){background:#1e3a5f0f;border-color:#1e3a5f26}.sp-btn.sp-active{background:var(--navy);color:#fff;font-weight:600;border-color:var(--navy)}.sp-btn.sp-disabled{color:#0003;cursor:default;background:transparent}.sp-chips{display:flex;flex-wrap:wrap;gap:8px}.sp-chip{padding:.55rem 1.2rem;font-size:.85rem;font-family:var(--font);border-radius:100px;border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;transition:all .12s ease}.sp-chip:hover{border-color:var(--navy);background:#1e3a5f0a}.sp-chip.sp-chip-active{background:var(--navy);color:#fff;border-color:var(--navy);font-weight:600}.sp-clear{display:inline-block;margin-top:.6rem;font-size:.75rem;color:var(--text-3);text-decoration:underline;cursor:pointer;border:none;background:none;font-family:var(--font);padding:0}.sp-clear:hover{color:var(--navy)}.nav-menu-btn{position:relative}.hamburger-badge{position:absolute;top:-2px;right:-2px;width:8px;height:8px;background:var(--jdt-red);border-radius:50%;border:1.5px solid #fff;pointer-events:none}.private-custom-section,.why-section,.how-section,.journal-section,.cta-section{content-visibility:auto;contain-intrinsic-size:auto 400px}footer{content-visibility:auto;contain-intrinsic-size:auto 350px}.modal-overlay,.cart-overlay{overscroll-behavior-y:contain}@media(max-width:768px){.cs-wrap>select{position:static!important;opacity:1!important;width:100%!important;height:auto!important;pointer-events:auto!important;display:block!important}.cs-trigger,.cs-menu,.sp-trigger,.search-panel{display:none!important}.cs-hidden{display:block!important}}.search-text{flex:2;position:relative;overflow:visible}.search-autocomplete{position:relative}.search-autocomplete input{padding-right:4rem}.search-field input::placeholder{color:var(--text-2);opacity:.7}.autocomplete-dropdown{display:none;position:absolute;top:calc(100% + 8px);left:-.85rem;right:-.85rem;min-width:280px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-xl);z-index:200;max-height:min(320px,50vh);overflow-y:auto}.ac-item{display:flex;align-items:center;gap:.6rem;padding:.55rem 1rem;cursor:pointer;transition:background var(--ease)}.ac-item:hover{background:var(--bg-warm)}.ac-text{flex:1;min-width:0}.ac-label{font-size:.82rem;font-weight:500}.ac-label strong{color:var(--jdt-red)}.ac-sub{font-size:.68rem;color:var(--text-3)}.ac-section-label{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);padding:.5rem 1rem .25rem}.search-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:var(--bg-muted);border:none;border-radius:50%;color:var(--text-3);font-size:0;line-height:1;cursor:pointer;width:20px;height:20px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--ease);display:flex;align-items:center;justify-content:center;z-index:2}.search-clear:after{content:"\2715";font-size:.65rem}.search-clear:hover{background:var(--border-hover);color:var(--text)}.search-clear.visible{opacity:1;pointer-events:auto}.category-bar{background:var(--bg);position:relative;display:flex;align-items:center}.category-bar .scroll-arrow{display:none;flex-shrink:0;z-index:3;width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--bg);color:var(--text-2);font-size:.85rem;cursor:pointer;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000001a;transition:background .15s,color .15s}.category-bar .scroll-arrow:hover{background:var(--text);color:#fff;border-color:var(--text)}.category-bar .scroll-arrow-left{margin-left:4px}.category-bar .scroll-arrow-right{margin-right:4px}.category-bar.fade-left .scroll-arrow-left,.category-bar.fade-right .scroll-arrow-right{display:flex}.category-bar:before,.category-bar:after{content:"";position:absolute;top:0;bottom:0;width:48px;pointer-events:none;z-index:2;opacity:0;transition:opacity .15s}.category-bar:before{left:0;background:linear-gradient(to right,var(--bg) 30%,transparent)}.category-bar:after{right:0;background:linear-gradient(to left,var(--bg) 30%,transparent)}.category-bar.fade-left:before{opacity:1}.category-bar.fade-right:after{opacity:1}.category-scroll{flex:1;min-width:0;padding:.6rem 1rem;display:flex;justify-content:center;gap:.35rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}@media(max-width:768px){.category-scroll{justify-content:flex-start}}.category-scroll::-webkit-scrollbar{display:none}.cat-pill{padding:.4rem .9rem;border-radius:100px;border:1px solid transparent;background:none;color:var(--text-2);font-size:.78rem;font-weight:500;cursor:pointer;transition:color .3s cubic-bezier(.4,0,.2,1),background .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);font-family:var(--font);white-space:nowrap}.cat-pill:hover{color:var(--text);background:var(--bg-muted)}.cat-pill.active{background:var(--text);color:#fff;border-color:var(--text);transform:scale(1.02)}.pill-count{font-size:.6rem;opacity:.6;margin-left:.1rem}.cat-pill.active .pill-count{opacity:.8}.subcategory-bar{background:var(--bg-cream, #F6F1EA);position:relative;border-top:1px solid var(--border);display:flex;align-items:center}.subcategory-bar .category-scroll{padding:.4rem 2rem;justify-content:flex-start}.subcategory-bar .cat-pill{font-size:.72rem;padding:.3rem .7rem}.subcategory-bar .cat-pill.active{background:var(--navy);border-color:var(--navy)}.subcategory-bar .scroll-arrow{display:none;flex-shrink:0;z-index:3;width:24px;height:24px;border-radius:50%;border:1px solid var(--border);background:var(--bg-cream, #F6F1EA);color:var(--text-2);font-size:.7rem;cursor:pointer;align-items:center;justify-content:center;box-shadow:0 1px 3px #00000014}.subcategory-bar .scroll-arrow:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.subcategory-bar .scroll-arrow-left{margin-left:4px}.subcategory-bar .scroll-arrow-right{margin-right:4px}.subcategory-bar.fade-left .scroll-arrow-left,.subcategory-bar.fade-right .scroll-arrow-right{display:flex}.subcategory-bar:before,.subcategory-bar:after{content:"";position:absolute;top:0;bottom:0;width:48px;pointer-events:none;z-index:2;opacity:0;transition:opacity .15s}.subcategory-bar:before{left:0;background:linear-gradient(to right,var(--bg-cream, #F6F1EA) 30%,transparent)}.subcategory-bar:after{right:0;background:linear-gradient(to left,var(--bg-cream, #F6F1EA) 30%,transparent)}.subcategory-bar.fade-left:before{opacity:1}.subcategory-bar.fade-right:after{opacity:1}section#tours{padding:1.5rem 2rem 4rem;max-width:var(--max-w, 1320px);margin:0 auto;scroll-margin-top:180px}.category-band+main section#tours{padding-top:1rem}.collection-section{scroll-margin-top:120px}.results-header{margin-bottom:.75rem;font-size:.8rem;color:var(--text-3);font-weight:500;scroll-margin-top:120px}.results-clear{color:var(--jdt-red, #C41230);text-decoration:none;font-weight:500;margin-left:.5rem}.results-clear:hover{text-decoration:underline}.empty-state{text-align:center;padding:5rem 2rem;color:var(--text-2)}.collection-section{margin-bottom:2.5rem}.collection-header{display:flex;align-items:baseline;gap:.6rem;margin-bottom:1.5rem;padding-bottom:.6rem;border-bottom:1px solid var(--border);position:relative}.collection-header:after{content:"";position:absolute;bottom:-1px;left:0;width:48px;height:2px;background:var(--gold)}.collection-header h2{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--text);margin:0;letter-spacing:-.02em}.collection-count{font-size:.75rem;color:var(--text-3)}.collection-expand{display:block;margin:1rem auto 0}.tour-grid-inner{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.75rem}.addons-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.tour-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow);transition:border-color .3s ease,box-shadow .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1);cursor:pointer;display:flex;flex-direction:column}.tour-image{border-radius:var(--r-lg) var(--r-lg) 0 0;overflow:hidden;position:relative}.tour-image:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.04),transparent 50%);opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:2}.tour-card:hover .tour-image:after{opacity:1}.tour-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.tour-card:hover .card-slide{transform:scale(1.02)}.card-slide{transition:opacity .4s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.25,.1,.25,1)}.tour-image{height:240px;position:relative;flex-shrink:0}.card-carousel{position:absolute;inset:0}.card-slide{position:absolute;inset:0;background-size:cover;background-position:center;background-color:var(--bg-muted);opacity:0;transition:opacity .4s cubic-bezier(.4,0,.2,1)}.card-slide.active{opacity:1}.card-arrow{position:absolute;top:50%;transform:translateY(-50%) scale(.75);z-index:3;width:32px;height:32px;border-radius:50%;background:#ffffffeb;border:none;color:var(--text);font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #0000002e;opacity:0;transition:opacity .2s ease,transform .2s cubic-bezier(.2,0,0,1)}.card-arrow:hover{transform:translateY(-50%) scale(1.05);box-shadow:0 2px 8px #0003}.tour-card:hover .card-arrow{opacity:1;transform:translateY(-50%) scale(1)}.card-prev{left:8px}.card-next{right:8px}.card-dots{position:absolute;bottom:8px;left:50%;transform:translate(-50%);z-index:3;display:flex;gap:4px}.card-dot{width:4px;height:4px;border-radius:50%;background:#ffffff59;transition:background .25s ease,width .25s ease,border-radius .25s ease}.card-dot.active{background:#fff;width:12px;border-radius:2px}.tour-type-badge{position:absolute;top:.6rem;left:.6rem;padding:.18rem .5rem;border-radius:2px;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#fff;background:#b8956ae6}.tour-badge.soldout{position:absolute;top:.6rem;left:.6rem;padding:.2rem .5rem;border-radius:4px;font-size:.65rem;font-weight:700;text-transform:uppercase;background:var(--jdt-red);color:#fff}.tour-price{display:block;padding:0;background:none;backdrop-filter:none;border-radius:0;font-size:.88rem;font-weight:700;color:var(--navy);font-family:var(--font-display);box-shadow:none;border:none;margin-bottom:.2rem}.tour-price small{font-size:.7rem;color:var(--text-3);font-family:var(--font);font-weight:400}.early-bird{display:inline-block;background:var(--green);color:#fff;padding:.15rem .5rem;border-radius:4px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;position:relative;overflow:hidden}.early-bird:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:badgeShimmer 3s ease-in-out infinite}@keyframes badgeShimmer{0%,to{left:-100%}50%{left:100%}}.tour-image .early-bird{position:absolute;top:.6rem;left:.6rem}.price-original{text-decoration:line-through;color:var(--text-3);font-size:.8em;margin-right:.3rem}.price-display .price-original+.price-amount{color:var(--green)}.tour-body{padding:1.25rem 1.25rem 1.35rem;display:flex;flex-direction:column;flex:1}.tour-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;margin-bottom:.4rem;line-height:1.25;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tour-tagline{font-size:.75rem;color:var(--jdt-red);font-weight:500;font-style:italic;margin-bottom:.3rem;line-height:1.4}.tour-meta{display:flex;gap:.6rem;font-size:.75rem;color:var(--text-3);margin-bottom:.5rem;flex-wrap:wrap}.tour-excerpt{font-size:.78rem;color:var(--text-3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;min-height:0}.tour-body .btn{align-self:flex-start;flex-shrink:0;margin-top:.75rem}.soldout-label{font-size:.72rem;color:var(--text-3);font-weight:500;margin-top:.5rem}.tour-card-addon .tour-image{height:120px}.tour-card-addon .tour-body{padding:.75rem .85rem .85rem}.tour-card-addon .tour-title{font-size:.85rem}.modal-overlay{display:none;position:fixed;inset:0;z-index:200;background:#00000073;backdrop-filter:blur(4px);overflow-y:auto;padding:2rem}.modal-overlay.open{display:flex;justify-content:center;align-items:flex-start;animation:modalFadeIn .25s ease}.modal-overlay.open .modal{animation:modalSlideUp .45s cubic-bezier(.22,1,.36,1)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(32px) scale(.96)}60%{opacity:1;transform:translateY(-4px) scale(1.005)}to{opacity:1;transform:translateY(0) scale(1)}}.modal{background:var(--bg);border-radius:var(--r);max-width:1060px;width:100%;position:relative;overflow:hidden;margin:1.5rem auto;box-shadow:var(--shadow-2xl)}.modal-close{position:absolute;top:.75rem;right:.75rem;z-index:10;background:#00000080;border:none;color:#fff;font-size:1.3rem;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--ease)}.modal-close:hover{background:#000000b3}.modal-cart-btn{position:absolute;top:.75rem;right:3.25rem;z-index:10;background:#00000080;border:none;color:#fff;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--ease)}.modal-cart-btn:hover{background:#000000b3}.modal-cart-btn svg{width:16px;height:16px}.modal-cart-badge{position:absolute;top:-3px;right:-5px;background:var(--jdt-red);color:#fff;font-size:.55rem;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.modal-hero{height:480px;background-size:cover;background-position:center;position:relative}.modal-hero-overlay{position:absolute;inset:0;background:linear-gradient(transparent 40%,#0009);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem}.modal-hero-overlay h2{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.2rem);font-weight:600;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4);letter-spacing:-.01em}.modal-meta{display:flex;gap:.4rem;font-size:.75rem;margin-top:.5rem;flex-wrap:wrap}.modal-meta span{background:#00000080;color:#fff;padding:.25rem .6rem;border-radius:4px}.modal-hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;background:#0000004d;color:#fff;border:none;font-size:1.8rem;width:36px;height:50px;cursor:pointer;transition:background var(--ease);display:flex;align-items:center;justify-content:center}.modal-hero-arrow:hover{background:#0000008c}.modal-prev{left:0;border-radius:0 4px 4px 0}.modal-next{right:0;border-radius:4px 0 0 4px}.modal-hero-counter{position:absolute;bottom:.6rem;left:50%;transform:translate(-50%);z-index:5;background:#00000073;color:#fff;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-family:var(--mono)}.gallery-strip{display:flex;gap:4px;padding:4px;background:var(--bg);overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.gallery-thumb{scroll-snap-align:start}.gallery-thumb{min-width:88px;height:60px;background-size:cover;background-position:center;border-radius:var(--r-sm);cursor:pointer;opacity:.5;transition:opacity var(--ease);border:2px solid transparent}.gallery-thumb:hover{opacity:.8}.gallery-thumb.active{opacity:1;border-color:var(--gold)}.modal-body{display:grid;grid-template-columns:1fr 360px;gap:2.5rem;padding:2rem 2rem 2.5rem}.modal-main{min-width:0}.modal-main h3{font-size:1rem;margin-bottom:.75rem;color:var(--jdt-red)}.modal-tagline{font-family:var(--font-display);font-size:1rem;color:var(--text-2);font-weight:400;font-style:italic;margin-bottom:.75rem;line-height:1.5}.modal-excerpt{font-size:.9rem;color:var(--text-2);margin-bottom:1.75rem;line-height:1.8}.itinerary-list{margin-bottom:1.5rem}.itinerary-day{display:flex;gap:1rem;padding:.85rem 0;font-size:.84rem;border-bottom:1px solid var(--border)}.itinerary-day:last-child{border-bottom:none}.day-num{color:var(--gold);font-weight:700;font-family:var(--font-display);font-size:.78rem;min-width:3.2rem;padding-top:.1rem}.day-content{flex:1}.day-title{color:var(--text);font-weight:600;font-size:.88rem}.day-spots{margin:.3rem 0 0;padding-left:1.1rem;list-style:disc;font-size:.82rem;color:var(--text-3);line-height:1.55}.day-spots li{margin:.12rem 0}.day-hotel{color:var(--text-3);font-size:.75rem;margin-top:.2rem;font-style:italic}.itinerary-route{color:var(--gold);font-size:.85rem;font-weight:500;margin-bottom:.75rem;letter-spacing:.02em}.day-remark{color:var(--text-3);font-size:.8rem;margin-top:.25rem;line-height:1.5}.day-remark.clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.day-remark-toggle{color:var(--gold);font-size:.75rem;cursor:pointer;margin-top:.15rem;font-weight:500;letter-spacing:.01em}.day-remark-toggle:hover{color:var(--gold-accent)}.day-spots{color:var(--gold-accent);font-size:.78rem;margin-top:.2rem;font-weight:500}.meals{display:flex;gap:.25rem;margin-top:.2rem}.meal-dot{width:17px;height:17px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:700}.meal-dot.included{background:#00aa8d1f;color:var(--green)}.meal-dot.excluded{background:#00000008;color:var(--text-3)}.booking-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r);padding:1.5rem;position:sticky;top:80px;box-shadow:var(--shadow)}.booking-card h3{font-family:var(--font-display);font-size:1.05rem;margin-bottom:1rem;padding-left:.85rem;border-left:2px solid var(--gold)}.price-display{display:flex;align-items:baseline;gap:.4rem;margin-bottom:.2rem}.price-amount{font-size:2rem;font-weight:700;color:var(--navy);font-family:var(--font-display)}.price-per{font-size:.75rem;color:var(--text-3)}.price-note{font-size:.7rem;color:var(--text-3);margin-bottom:1rem}.private-pricing{margin:.5rem 0}.price-tier{display:flex;justify-content:space-between;padding:.3rem 0;font-size:.78rem;border-bottom:1px solid var(--border)}.price-tier span:first-child{color:var(--text-2)}.price-tier span:last-child{font-weight:600;font-family:var(--mono)}.booking-form label{display:block;font-size:.68rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;margin:.6rem 0 .25rem}.booking-form .btn-primary,.booking-sidebar .btn-primary{font-size:.95rem;padding:.9rem 2rem;letter-spacing:.04em;box-shadow:0 2px 8px #0c234033,0 0 0 1px #0c234014}.booking-form .btn-primary:hover,.booking-sidebar .btn-primary:hover{box-shadow:0 6px 20px #0c23404d,0 0 0 1px #0c23401f;transform:translateY(-2px)}.booking-form .btn-secondary,.booking-sidebar .btn-secondary{font-size:.95rem;padding:.9rem 2rem;letter-spacing:.04em;border:2px solid var(--navy);color:var(--navy);font-weight:700;background:#fff}.booking-form .btn-secondary:hover,.booking-sidebar .btn-secondary:hover{background:var(--navy-light);transform:translateY(-1px)}.booking-form label:first-of-type{margin-top:0}.required{color:var(--jdt-red);font-weight:400}.form-input{width:100%;min-height:var(--input-h);padding:var(--input-pad-y) var(--input-pad-x);background:var(--bg);border:1px solid var(--border);border-radius:var(--r);color:var(--text);font-size:1rem;font-family:var(--font);line-height:1.5;transition:border-color .15s ease,box-shadow .15s ease}.form-input::placeholder{color:var(--input-placeholder)}.form-input:hover{border-color:var(--border-hover)}.form-input:focus{outline:none;border-color:var(--gold);box-shadow:var(--focus-ring)}.form-input:disabled,.form-input[readonly]{background:var(--input-disabled-bg);color:var(--input-disabled-text);cursor:not-allowed;border-color:var(--border)}.form-input.input-error{border-color:var(--error);background:var(--error-bg)}.form-input.input-error:focus{box-shadow:var(--focus-ring-error)}select.form-input{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%237A756E' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--input-pad-x) center;padding-right:calc(var(--input-pad-x) + 24px)}select.form-input:hover{border-color:var(--border-hover)}select.form-input:focus{border-color:var(--gold);box-shadow:var(--focus-ring)}textarea.form-input{resize:vertical;min-height:calc(var(--input-h) * 2);line-height:1.6}.form-input-sm{min-height:var(--input-h-sm);padding:var(--input-pad-y-sm) var(--input-pad-x-sm);font-size:.85rem;border-radius:6px}.form-input-lg{min-height:var(--input-h-lg);padding:16px 18px;font-size:1.05rem}.form-label{display:block;font-size:.72rem;font-weight:700;color:var(--text-2);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.35rem}.form-label .required{color:var(--jdt-red);font-weight:400}.form-error{display:none;font-size:.75rem;color:var(--error);margin-top:.3rem;line-height:1.3}.form-error.visible{display:block}.form-group{margin-bottom:.75rem}.form-group:last-child{margin-bottom:0}.stepper{display:inline-flex;align-items:center;gap:12px;min-height:var(--input-h)}.stepper-btn{width:var(--stepper-btn-size);height:var(--stepper-btn-size);border-radius:50%;border:1px solid var(--border-hover);background:var(--bg);color:var(--text-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease;flex-shrink:0;padding:0}.stepper-btn svg{width:14px;height:14px}.stepper-btn:hover{border-color:var(--navy);color:var(--navy);background:var(--navy-light)}.stepper-btn:active{transform:scale(.95)}.stepper-btn:disabled{opacity:.3;cursor:not-allowed;border-color:var(--border)}.stepper-btn:disabled:hover{background:var(--bg);color:var(--text-3);border-color:var(--border)}.stepper-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.stepper-value{font-size:1rem;font-weight:600;color:var(--text);min-width:80px;text-align:center;line-height:1.3}.stepper-value small{display:block;font-size:.7rem;font-weight:400;color:var(--text-3)}.form-input:focus-visible{outline:none}.enhance-section{margin:1rem 0 0;padding:1rem 0 0;border-top:1px solid var(--border)}.enhance-heading{font-family:var(--font-display);font-size:.95rem;font-weight:600;color:var(--text);margin-bottom:.75rem;letter-spacing:-.01em}.enhance-group{margin-bottom:.75rem}.enhance-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:.4rem}.enhance-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem 0;font-size:.82rem;color:var(--text-2)}.enhance-row>span:first-child{flex-shrink:0;min-width:70px}.enhance-row select.form-input-sm{max-width:120px;min-height:34px;font-size:.8rem}.enhance-check{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.82rem;color:var(--text-2);flex:1}.enhance-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--navy);cursor:pointer;flex-shrink:0}.enhance-price{font-size:.78rem;font-weight:600;color:var(--text);font-family:var(--mono);white-space:nowrap;flex-shrink:0}.instant-estimate{margin:1rem 0 .5rem;padding:1rem;background:var(--bg-warm);border:1px solid var(--gold-border);border-radius:var(--r-lg)}.estimate-heading{font-family:var(--font-display);font-size:.85rem;font-weight:600;color:var(--gold-dim);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.6rem}.estimate-line{display:flex;justify-content:space-between;padding:.25rem 0;font-size:.78rem;color:var(--text-2)}.estimate-line span:last-child{font-family:var(--mono);font-weight:500}.estimate-total{display:flex;justify-content:space-between;align-items:center;padding:.6rem 0 0;margin-top:.5rem;border-top:1px solid var(--gold-border)}.estimate-total span:first-child{font-size:.82rem;font-weight:600;color:var(--text)}.total-amount{font-size:1.2rem;font-weight:800;color:var(--navy);font-family:var(--mono)}.booking-total{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;margin:.5rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.booking-total span:first-child{font-size:.82rem;color:var(--text-2)}.booking-note{font-size:.65rem;color:var(--text-3);margin-top:.6rem;line-height:1.4;text-align:center}.room-manager{border:1px solid var(--border);border-radius:var(--r);overflow:hidden}.room-summary{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;cursor:pointer;font-size:.85rem;color:var(--text-1);background:var(--bg-0);transition:background .15s}.room-summary:hover{background:var(--bg-1)}.room-summary-text{font-weight:500}.room-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-top:1px solid var(--border-1)}.room-label{font-size:.82rem;color:var(--text-1)}.room-label small{color:var(--text-muted);font-size:.7rem;margin-left:.3rem}.room-stepper{display:flex;align-items:center;gap:.5rem}.room-stepper button{width:28px;height:28px;border-radius:50%;border:1px solid var(--border);background:var(--bg-0);color:var(--text-1);font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.room-stepper button:hover:not(:disabled){background:var(--navy);color:#fff;border-color:var(--navy)}.room-stepper button:disabled{opacity:.3;cursor:not-allowed}.room-count{font-size:.9rem;font-weight:600;min-width:1.5rem;text-align:center}.room-status{padding:.5rem .75rem;font-size:.75rem;border-top:1px solid var(--border-1);text-align:center}.room-status-warn{color:var(--accent-cherry)}.room-status-ok{color:var(--accent-green)}.cart-room-label{font-size:.7rem;color:var(--text-muted);margin-top:.15rem}.dep-calendar{max-height:280px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--r);padding:.5rem;margin-bottom:.5rem;scrollbar-width:thin}.dep-cal-month{margin-bottom:.75rem}.dep-cal-month:last-child{margin-bottom:0}.dep-cal-month-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-2);margin-bottom:.35rem;text-align:center}.dep-cal-header{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:.62rem;font-weight:600;color:var(--text-3);margin-bottom:.2rem}.dep-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.dep-cal-empty{aspect-ratio:1}.dep-cal-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:6px;font-size:.72rem;line-height:1.1;position:relative}.dep-cal-none{color:var(--text-3);opacity:.35}.dep-cal-avail{background:var(--bg-warm);border:1px solid var(--border);cursor:pointer;color:var(--text);font-weight:600;transition:background .15s,border-color .15s,transform .15s}.dep-cal-avail:hover{background:#e8f0fe;border-color:var(--navy);transform:scale(1.05);box-shadow:0 2px 8px #1e3a5f1f}.dep-cal-avail:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dep-cal-avail.dep-cal-active{background:var(--navy);color:#fff;border-color:var(--navy)}.dep-cal-avail.dep-cal-active .dep-cal-price{color:#fffc}.dep-cal-soldout{background:var(--bg-muted);color:var(--text-3);opacity:.5;text-decoration:line-through;cursor:not-allowed}.dep-cal-end{background:#1e3a5f0f;color:var(--navy);opacity:.5;font-size:.6rem;border:1px dashed rgba(30,58,95,.2)}.dep-cal-num{font-size:.78rem}.dep-cal-price{font-size:.55rem;font-weight:500;color:var(--navy);white-space:nowrap}.dep-cal-selected{font-size:.72rem;color:var(--text-2);text-align:center;padding:.35rem 0;font-weight:500}.dep-cal-eb{color:var(--accent-cherry);font-weight:600;font-size:.65rem}.dep-cal-summary{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r);cursor:pointer;margin-bottom:.5rem;transition:border-color .15s}.dep-cal-summary:hover{border-color:var(--navy)}.dep-cal-summary label{font-size:.6rem!important;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;margin:0!important;cursor:pointer}.dep-cal-summary-date{font-size:.78rem;font-weight:600;color:var(--navy)}.dep-cal-summary-change{font-size:.65rem;color:var(--navy);font-weight:600;white-space:nowrap;background:#1e3a5f14;border:1px solid rgba(30,58,95,.2);border-radius:4px;padding:.25rem .55rem;letter-spacing:.02em;text-transform:uppercase;transition:background .15s,border-color .15s}.dep-cal-summary-change:hover{background:#1e3a5f26;border-color:var(--navy)}.dep-cal-range{background:#1e3a5f0f;border-radius:0}.dep-cal-range-start{border-radius:var(--r-sm, 4px) 0 0 var(--r-sm, 4px)}.dep-cal-range-end{border-radius:0 var(--r-sm, 4px) var(--r-sm, 4px) 0}.dep-cal-range.dep-cal-none{color:var(--navy);opacity:.6}.dep-cal-clickable:hover{background:#1e3a5f26!important;opacity:1}.dep-sel-start{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important;border-radius:var(--r-sm, 4px) 0 0 var(--r-sm, 4px);z-index:2}.dep-sel-start .dep-cal-price{color:#fffc!important}.dep-sel-start .dep-cal-duration{color:#ffffffb3!important}.dep-sel-mid{background:#1e3a5f24!important;color:var(--navy)!important;border-radius:0}.dep-sel-end{background:#1e3a5f1a!important;color:var(--navy)!important;border-radius:0 var(--r-sm, 4px) var(--r-sm, 4px) 0;border:1px dashed rgba(30,58,95,.35)!important;opacity:.75}.dep-cal-duration{display:block;text-align:center;font-size:.6rem;color:var(--text-3);margin-top:.15rem;font-weight:500}.similar-tours{padding:1.25rem 1.5rem;border-top:1px solid var(--border)}.similar-tours h3{font-size:.9rem;font-weight:600;margin-bottom:.75rem}.similar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.similar-card{cursor:pointer;border-radius:var(--r);overflow:hidden;border:1px solid var(--border);transition:all var(--ease)}.similar-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow)}.similar-img{height:100px;background-size:cover;background-position:center}.similar-info{padding:.5rem .6rem}.similar-title{font-size:.75rem;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.similar-meta{font-size:.65rem;color:var(--text-3);margin-top:.2rem}.modal-sidebar{position:sticky;top:1rem;align-self:start}.modal-mobile-cta{display:none}.checkout-label{display:block;font-size:.68rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.25rem}.cart-overlay{display:none;position:fixed;inset:0;z-index:250;background:#0000004d}.cart-overlay.open{display:block;animation:cartFadeIn .2s ease}.cart-overlay.open .cart-panel{animation:cartSlideIn .3s cubic-bezier(.22,1,.36,1)}@keyframes cartFadeIn{0%{opacity:0}to{opacity:1}}@keyframes cartSlideIn{0%{transform:translate(100%)}70%{transform:translate(-2%)}to{transform:translate(0)}}.cart-panel{position:absolute;right:0;top:0;bottom:0;width:400px;max-width:100vw;background:var(--bg);box-shadow:-2px 0 20px #00000026;display:flex;flex-direction:column}.cart-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.cart-header h3{font-size:1rem;margin:0;font-weight:700}.cart-close{background:none;border:none;font-size:1.4rem;color:var(--text-3);cursor:pointer;padding:.25rem;line-height:1}.cart-body{flex:1;overflow-y:auto;padding:.75rem 1.25rem}.cart-empty{text-align:center;padding:3rem 0;color:var(--text-2)}.cart-item{display:flex;gap:.65rem;padding:.65rem 0;border-bottom:1px solid var(--border);position:relative}.cart-item-img{width:64px;height:48px;border-radius:4px;background-size:cover;background-position:center;flex-shrink:0}.cart-item-details{flex:1;min-width:0}.cart-item-title{font-size:.8rem;font-weight:600;margin-bottom:.1rem;padding-right:1.4rem}.cart-item-meta{font-size:.68rem;color:var(--text-3);margin-bottom:.25rem}.cart-item-change{color:var(--navy);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.cart-item-change:hover{color:var(--accent-gold)}.cart-dep-picker{display:flex;align-items:center;gap:.4rem;margin-top:.3rem;animation:fadeIn .15s ease}.cart-dep-picker select{flex:1;padding:.35rem 1.8rem .35rem .5rem;border:1px solid var(--navy);border-radius:6px;font-size:.7rem;font-family:var(--font);background:var(--bg-input);color:var(--text);cursor:pointer}.cart-dep-picker select:focus{outline:2px solid var(--navy);outline-offset:1px}.cart-dep-cancel{font-size:.65rem;color:var(--text-3);cursor:pointer;white-space:nowrap;text-decoration:underline;text-underline-offset:2px}.cart-dep-cancel:hover{color:var(--text)}@keyframes cartItemFlash{0%{border-color:var(--green);box-shadow:0 0 0 2px #0d7d6a26}to{border-color:var(--border);box-shadow:none}}.cart-item-updated{animation:cartItemFlash 1.2s ease-out}.modal-edit-banner{background:var(--bg-warm);border-left:3px solid var(--gold);padding:.5rem .75rem;font-size:.75rem;color:var(--text-2);border-radius:0 var(--r) var(--r) 0;margin-bottom:.75rem}.cart-item-price{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.cart-qty{padding:.3rem 1.6rem .3rem .5rem;border:1px solid var(--border);border-radius:6px;font-size:.72rem;background:var(--bg-input);color:var(--text);font-family:var(--font);cursor:pointer;min-height:32px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .4rem center;transition:border-color var(--ease),box-shadow var(--ease)}.cart-qty:hover{border-color:var(--border-hover)}.cart-qty:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 2px #1e3a5f14}.cart-item-total{font-weight:700;font-family:var(--mono);font-size:.8rem;margin-left:auto}.cart-item-breakdown{margin-top:.35rem;font-size:.7rem;color:var(--text-2)}.cart-item-breakdown .cart-line{display:flex;justify-content:space-between;gap:.5rem;padding:.1rem 0;line-height:1.5}.cart-item-breakdown .cart-line span:last-child{font-family:var(--mono);font-weight:500;white-space:nowrap}.cart-item-remove{position:absolute;top:.4rem;right:0;background:none;border:none;color:var(--text-3);font-size:1rem;cursor:pointer;padding:.2rem}.cart-item-remove:hover{color:var(--jdt-red)}.cart-footer{padding:.85rem 1.25rem;border-top:2px solid var(--border)}.cart-total-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.cart-total-row span:first-child{font-size:.85rem;color:var(--text-2)}.cart-total-amount{font-size:1.2rem;font-weight:800;color:var(--navy);font-family:var(--mono)}.cart-note{text-align:center;font-size:.65rem;color:var(--text-3);margin-top:.4rem}.cart-recs{margin-top:1.25rem;padding-top:.75rem;border-top:1px solid var(--border)}.cart-recs-title{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:.5rem}.cart-rec-item{display:flex;align-items:center;gap:.5rem;padding:.4rem;border:1px solid var(--border);border-radius:var(--r);margin-bottom:.4rem;cursor:pointer;transition:all var(--ease)}.cart-rec-item:hover{border-color:var(--border-hover);background:var(--bg-warm)}.cart-rec-img{width:36px;height:28px;border-radius:3px;background-size:cover;background-position:center;flex-shrink:0}.cart-rec-info{flex:1;min-width:0}.cart-rec-name{font-size:.72rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-rec-price{font-size:.65rem;color:var(--text-3);font-family:var(--mono)}.cart-rec-add{background:var(--navy);color:#fff;border:none;width:22px;height:22px;border-radius:50%;font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--ease)}.cart-rec-add:hover{background:var(--navy-hover)}.cart-item-orphaned{opacity:.7;border-left:3px solid var(--jdt-red)}.cart-notif{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%) translateY(80px);background:var(--text);color:#fff;padding:.6rem 1.25rem;border-radius:var(--r);font-size:.8rem;font-weight:500;z-index:300;transition:transform .3s ease,opacity .3s ease;opacity:0;pointer-events:none;box-shadow:var(--shadow-lg)}.cart-notif.show{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto}footer{background:#111827;color:#ffffffbf;padding:2.5rem 2rem calc(1.25rem + env(safe-area-inset-bottom,0px))}.footer-inner{max-width:var(--max-w, 1320px);margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr 2.5fr;gap:2rem}.footer-logo-text{font-size:1rem;font-weight:700;color:#fff;margin-bottom:.4rem}.footer-brand p{font-size:.75rem;line-height:1.6;color:#ffffffb3}.footer-contact{font-size:.8rem}.footer-contact div{margin-bottom:.75rem}.footer-links{display:flex;gap:2rem}.footer-col{display:flex;flex-direction:column;gap:.3rem}.footer-col strong{color:#fff;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.2rem}footer a{color:#fff9;text-decoration:none;font-size:.75rem;transition:color var(--ease)}footer a:hover{color:#ffffffd9}.footer-bottom{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding-top:1.25rem;margin-top:.5rem;border-top:1px solid rgba(255,255,255,.06);text-align:center}.footer-badges-row{display:flex;align-items:center;justify-content:space-between;width:100%}.footer-trust-badges{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.trust-badge{display:inline-block;height:32px;background-image:url(/img/trust-badges.png);background-repeat:no-repeat;background-size:388px 32px;opacity:.9;filter:brightness(.9) contrast(1.2);transition:opacity .2s ease,filter .2s ease}.trust-badge:hover{opacity:1;filter:brightness(1) contrast(1.3)}.trust-iata{width:50px;background-position:0 0}.trust-asta{width:82px;background-position:-87px 0}.trust-jata{width:62px;background-position:-199px 0}.trust-cst{width:75px;background-position:-288px 0}.trust-badge+.trust-badge{border-left:1px solid rgba(255,255,255,.15);padding-left:1.25rem}.footer-bottom p{font-size:.65rem;color:#fffc}.footer-heritage{font-family:var(--font-display);font-size:.85rem;color:#fffc;letter-spacing:.02em;margin-bottom:.5rem}.heritage-mark{color:var(--gold-accent);font-weight:700;font-size:.9rem;letter-spacing:.04em}.heritage-divider{display:inline-block;width:24px;height:1px;background:var(--gold);vertical-align:middle;margin:0 .75rem;opacity:.5}.footer-cards-img{height:20px;opacity:.5}.section-label{display:inline-block;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--gold-dim);margin-bottom:.75rem;padding-bottom:0;border-bottom:none}.section-label:before{content:"";display:inline-block;width:24px;height:1px;background:var(--gold);vertical-align:middle;margin-right:.75rem}.why-section h2,.how-section h2,.journal-section h2,.private-custom-content h2,.cta-section h2{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:600;color:var(--text);margin-bottom:.6rem;line-height:1.15;letter-spacing:-.02em}.section-desc{font-size:.9rem;color:var(--text-2);line-height:1.7;max-width:540px;margin-bottom:1.5rem}.private-custom-section{background:linear-gradient(180deg,var(--bg) 0%,var(--bg-warm) 8%,var(--bg-warm) 92%,var(--bg) 100%);padding:7.5rem 2rem}.private-custom-inner{max-width:var(--max-w, 1320px);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.value-bullets{list-style:none;margin-bottom:1.75rem}.value-bullets li{position:relative;padding-left:1.4rem;margin-bottom:.6rem;font-size:.88rem;color:var(--text-2);line-height:1.5}.value-bullets li:before{content:"";position:absolute;left:0;top:.45rem;width:8px;height:8px;background:var(--gold);border-radius:2px}.private-custom-image img{width:100%;height:auto;border-radius:var(--r-lg);object-fit:cover;max-height:360px}.why-section{padding:7.5rem 2rem;max-width:var(--max-w, 1320px);margin:0 auto;text-align:center;position:relative}.why-section:before{content:"";display:block;width:48px;height:2px;background:var(--gold);margin:0 auto 1.5rem}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:2rem}.why-card{text-align:center;padding:3rem 1.75rem;border-radius:var(--r-lg);background:var(--bg);border:1px solid var(--border);transition:all .4s cubic-bezier(.22,1,.36,1)}.why-card:hover{border-color:var(--gold-border);box-shadow:var(--shadow)}.why-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.why-icon-red{background:#ca000014;color:var(--jdt-red)}.why-icon-blue{background:#003c6b14;color:var(--navy)}.why-icon-green{background:#00aa8d14;color:var(--green)}.why-icon-gold{background:#c6a66714;color:var(--gold-dim)}.why-card h3{font-family:var(--font-display);font-size:1rem;font-weight:600;margin-bottom:.6rem;color:var(--text)}.why-card p{font-size:.82rem;color:var(--text-2);line-height:1.7}.how-section{padding:7.5rem 2rem;max-width:var(--max-w, 1320px);margin:0 auto;text-align:center;background:var(--bg-warm)}.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:2rem}.how-step{text-align:center;padding:1.25rem 1rem}.step-num{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:transparent;border:1.5px solid var(--gold);color:var(--gold);font-family:var(--font-display);font-size:1.3rem;font-weight:600;margin-bottom:.75rem}.how-step h3{font-size:.88rem;font-weight:700;margin-bottom:.4rem;color:var(--text)}.how-step p{font-size:.8rem;color:var(--text-2);line-height:1.6}.journal-section{padding:7rem 2rem;max-width:var(--max-w, 1320px);margin:0 auto}.journal-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:1.5rem}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.journal-card{text-decoration:none;color:inherit;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;transition:all .3s cubic-bezier(.22,1,.36,1)}.journal-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow)}.journal-card:hover .journal-img{transform:scale(1.03)}.journal-img{height:220px;background-size:cover;background-position:center;transition:transform 1.5s cubic-bezier(.25,.1,.25,1)}.journal-body{padding:1.25rem}.journal-tag{display:inline-block;font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin-bottom:.5rem}.journal-body h3{font-family:var(--font-display);font-size:1rem;font-weight:600;line-height:1.25;margin-bottom:.3rem;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.journal-body p{font-size:.78rem;color:var(--text-3);line-height:1.5}.nav-phone-link{display:none;align-items:center;gap:.35rem;color:var(--navy);text-decoration:none;font-size:.78rem;font-weight:600;letter-spacing:.01em;padding:.35rem .75rem;border-radius:20px;border:1px solid var(--border);transition:background .15s ease,border-color .15s ease;white-space:nowrap;flex-shrink:0}.nav-phone-link:hover{background:var(--bg-surface);border-color:var(--navy)}.nav-phone-link svg{flex-shrink:0;opacity:.7}@media(min-width:900px){.nav-phone-link{display:flex}}.proof-section{padding:3.5rem 1.5rem;border-top:1px solid var(--border)}.proof-inner{max-width:720px;margin:0 auto;text-align:center}.proof-badge-row{display:flex;align-items:center;justify-content:center;gap:2.5rem;margin-bottom:2rem}.proof-aggregate{display:flex;align-items:center;gap:.3rem;flex-shrink:0;white-space:nowrap}.proof-ta-mark{font-size:.78rem;font-weight:700;color:var(--navy);text-decoration:none;white-space:nowrap;flex-shrink:0;display:flex;align-items:center;gap:.35rem}.proof-ta-mark:hover{opacity:.7}.proof-ta-icon{font-size:1.1rem;color:#34e0a1}.proof-stat-group{display:flex;align-items:center;gap:1.25rem}.proof-stat{font-size:.82rem;color:var(--text-muted);white-space:nowrap}.proof-stat strong{display:block;font-size:1.35rem;color:var(--navy);font-weight:700;line-height:1.1}.proof-divider{width:1px;height:28px;background:var(--border)}.proof-quote{margin:0;padding:0;border:none}.proof-quote{transition:opacity .3s ease}.proof-quote p{font-family:Crimson Pro,Georgia,serif;font-size:1.15rem;font-style:italic;line-height:1.65;color:var(--text-muted);max-width:540px;margin:0 auto .5rem}.proof-quote cite{font-size:.75rem;color:var(--text-muted);font-style:normal;font-weight:500;opacity:.92}.proof-trust-badges{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:1.5rem;margin-bottom:.25rem}.proof-trust-badges .trust-badge{opacity:.7;filter:none}.proof-trust-badges .trust-badge:hover{opacity:1}.proof-links{display:flex;justify-content:center;gap:1.5rem;margin-top:1.5rem}.proof-links a{font-size:.75rem;color:var(--text-muted);text-decoration:none;font-weight:500;letter-spacing:.02em;transition:color .15s ease}.proof-links a:hover{color:var(--navy)}@media(max-width:600px){.proof-badge-row{flex-direction:column;gap:1.25rem}.proof-stat strong{font-size:1.1rem}.proof-links{gap:1rem}}.star-badge{display:inline-flex;align-items:center;gap:.3rem}.star-count{font-size:.75rem;color:var(--text-3);font-weight:500}.tour-rating{margin:.15rem 0 .2rem;line-height:1}.review-stars{display:inline;user-select:none;white-space:nowrap}.star-frac{position:relative;display:inline-block;color:var(--star-dim, rgba(184,149,106,.2))}.star-frac:before{content:"\2605";position:absolute;left:0;top:0;color:var(--star-color, #B8956A);clip-path:inset(0 calc(100% - var(--star-fill, 50%)) 0 0)}.proof-stars{margin-bottom:.5rem;display:flex;align-items:center;justify-content:center;gap:.4rem}.proof-source{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--green);font-weight:600;opacity:.8}.proof-quote cite em{font-size:.7rem;color:var(--text-3);font-style:normal}.modal-hero-rating{margin:.35rem 0 .25rem;display:flex;align-items:center;transition:opacity .15s ease}.modal-hero-rating:hover{opacity:.8}.review-card{border:1px solid var(--border-1, var(--border));border-radius:12px;padding:1.25rem;transition:box-shadow .15s ease}.review-card:hover{box-shadow:var(--shadow-md)}.review-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.6rem}.review-avatar{width:36px;height:36px;border-radius:50%;background:var(--jdt-navy, var(--navy));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.review-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem}.review-meta strong{font-size:.9rem}.review-meta time{font-size:.72rem;color:var(--text-3)}.review-tour{font-size:.75rem;color:var(--text-3)}.review-source{font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;color:var(--green);font-weight:600;padding:.1rem .35rem;border:1px solid rgba(13,125,106,.2);border-radius:3px}.review-title{font-weight:600;font-size:.88rem;margin-bottom:.35rem}.review-text{font-size:.88rem;color:var(--text-2);line-height:1.6;margin:0}.review-inline-stars{vertical-align:middle}.tour-reviews-panel{padding-top:.5rem}.reviews-summary{display:flex;align-items:flex-start;gap:2rem;padding:1.5rem;background:var(--bg-cream, var(--bg-warm));border-radius:12px;margin:1.5rem 0}.reviews-summary-score{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.reviews-summary-avg{font-size:2rem;font-weight:700;color:var(--navy)}.reviews-summary-label{font-size:.8rem;color:var(--text-3)}.reviews-summary-stats{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:0}.reviews-summary-stats>span:first-child{font-size:.85rem;color:var(--text-2);font-weight:500;margin-bottom:.25rem}.reviews-summary-bar{display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--text-3)}.reviews-summary-bar .bar{flex:1;height:6px;background:var(--border);border-radius:3px;overflow:hidden}.reviews-summary-bar .bar span{display:block;height:100%;background:var(--gold-accent);border-radius:3px}@media(max-width:600px){.reviews-summary{flex-direction:column;gap:1rem}.review-header{flex-direction:column;gap:.4rem}}.reviews-sort{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.cal-dep-rating{margin:.1rem 0;line-height:1}.deals-card-rating{margin:.2rem 0}.cta-section{text-align:center;padding:5rem 2rem;background:var(--navy);color:#fff;position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 30% 50%,rgba(184,149,106,.15) 0%,transparent 60%);pointer-events:none}.cta-section h2{color:#fff;margin-bottom:.35rem}.cta-section p{font-size:.95rem;color:#fff9;margin-bottom:1.25rem}.cta-phone-big{display:block;font-size:2rem;font-weight:700;color:#fff;text-decoration:none;letter-spacing:.03em;margin-bottom:.25rem;position:relative}.cta-phone-big:hover{opacity:.92}.cta-phone-sub{font-size:.75rem;color:#fff6;margin-bottom:1.75rem}.cta-section .btn-primary{background:#fff;color:var(--navy)}.cta-section .btn-primary:hover{background:#ffffffeb}.cta-buttons{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.phone-bar{background:#374151;text-align:center;padding:.6rem 1rem;font-size:.75rem;display:flex;justify-content:center;align-items:center;gap:.35rem;flex-wrap:wrap}.phone-bar a{color:#ffffffbf;text-decoration:none}.phone-bar a:hover,.phone-bar strong{color:#fff}.phone-bar-sep{color:#ffffff40;margin:0 .3rem}.modal-help-bar{display:flex;align-items:center;gap:.5rem;padding:.85rem 1.25rem;margin:1.5rem 1.5rem 0;background:var(--bg-surface, #faf9f6);border:1px solid var(--border);border-radius:var(--radius, 10px);font-size:.82rem;color:var(--text-muted)}.modal-help-bar svg{flex-shrink:0;color:var(--navy);opacity:.6}.modal-help-bar a{color:var(--navy);text-decoration:none;font-weight:600}.modal-help-bar a:hover{text-decoration:underline}.footer-social{display:flex;gap:.75rem;margin-top:.75rem}.footer-social a{color:#ffffff80;transition:color var(--ease)}.footer-social a:hover{color:#fff}.footer-destinations{grid-column:1 / -1;padding-top:1rem;border-top:1px solid rgba(255,255,255,.06)}.footer-destinations strong{display:block;color:#fff;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}.dest-links{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem}.dest-links a{font-size:.72rem;color:#ffffffb3}.dest-links a:hover{color:#ffffffd9}.footer-certifications{display:flex;align-items:center;gap:1rem}.footer-seals{font-size:.65rem;color:#fff9;letter-spacing:.03em}.reveal{opacity:0;transform:translateY(16px);transition:opacity .8s cubic-bezier(.25,.1,.25,1),transform .8s cubic-bezier(.25,.1,.25,1)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-stagger>.reveal:nth-child(1){transition-delay:0s}.reveal-stagger>.reveal:nth-child(2){transition-delay:.08s}.reveal-stagger>.reveal:nth-child(3){transition-delay:.16s}.reveal-stagger>.reveal:nth-child(4){transition-delay:.24s}.reveal-stagger>.reveal:nth-child(5){transition-delay:.32s}.reveal-stagger>.reveal:nth-child(6){transition-delay:.4s}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}.cookie-banner{display:none;position:fixed;bottom:0;left:0;right:0;z-index:10000;background:#1a1a2e;border-top:1px solid rgba(255,255,255,.08);box-shadow:0 -8px 32px #0000004d;padding:1.25rem 2rem}.cookie-banner.show{display:block;animation:cookieSlideUp .4s cubic-bezier(.22,1,.36,1)}@keyframes cookieSlideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-content{max-width:var(--max-w, 1320px);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.cookie-content p{font-size:.82rem;color:#fffc;margin:0;flex:1;line-height:1.5}.cookie-actions{display:flex;gap:.5rem;flex-shrink:0}.cookie-actions .btn-primary{background:#fff;color:#1a1a2e}.cookie-actions .btn-primary:hover{background:#ffffffe6;box-shadow:0 2px 12px #fff3}.cookie-actions .btn-secondary{background:transparent;color:#fffc;border-color:#ffffff40}.cookie-actions .btn-secondary:hover{background:#ffffff14;border-color:#fff6;color:#fff}.cookie-prefs-overlay{display:none;position:fixed;inset:0;z-index:10001;background:#00000080;align-items:center;justify-content:center}.cookie-prefs-overlay.open{display:flex}.cookie-prefs-modal{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);max-width:480px;width:90%;max-height:80vh;overflow-y:auto}.cookie-prefs-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.cookie-prefs-header h3{margin:0;font-size:1rem}.cookie-prefs-body{padding:1rem 1.25rem}.cookie-category{padding:.75rem 0;border-bottom:1px solid var(--border)}.cookie-category:last-child{border-bottom:none}.cookie-cat-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.cookie-always-on{font-size:.7rem;color:var(--text-3);background:var(--bg-warm);padding:.15rem .5rem;border-radius:4px}.cookie-category p{font-size:.75rem;color:var(--text-3);margin:0}.cookie-toggle{position:relative;display:inline-block;width:36px;height:20px}.cookie-toggle input{opacity:0;width:0;height:0}.cookie-slider{position:absolute;cursor:pointer;inset:0;background:var(--border);border-radius:20px;transition:.2s}.cookie-slider:before{content:"";position:absolute;height:14px;width:14px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s}.cookie-toggle input:checked+.cookie-slider{background:var(--jdt-red)}.cookie-toggle input:checked+.cookie-slider:before{transform:translate(16px)}.cookie-prefs-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem;border-top:1px solid var(--border)}@media(max-width:768px){.cookie-content{flex-direction:column;text-align:center}.cookie-actions{width:100%;justify-content:center}.mobile-search-close,.cart-qty{min-width:44px;min-height:44px}.form-input{min-height:52px;font-size:16px}.stepper{justify-content:center;width:100%}.stepper-btn{width:40px;height:40px}.dep-cal-price{font-size:.6rem}.dep-cal-header{font-size:.65rem}.dep-cal-day{font-size:.75rem;min-height:44px}.dep-cal-grid{gap:3px}.category-scroll{scroll-snap-type:x proximity;overscroll-behavior-x:contain}.cat-pill{scroll-snap-align:center}.skeleton-card:nth-child(n+2){display:none}#tourGrid{min-height:280px}}@media(max-width:480px){.cart-panel{width:100vw}}.loading-state{text-align:center;padding:4rem 0;color:var(--text-3)}.loading-spinner{width:28px;height:28px;border:2px solid var(--border);border-top-color:var(--jdt-red);border-radius:50%;margin:0 auto .75rem;animation:spin .7s linear infinite}.jp,body.lang-jp .en{display:none}body.lang-jp .jp{display:inline}@media(max-width:768px){.nav-inner{padding:0 .75rem!important;gap:.5rem!important}.nav-links{right:.75rem}.nav-search-pill{max-width:none;padding:.4rem .85rem;font-size:.78rem}.nav-actions{gap:.25rem!important}.hero-slider{height:55vh;min-height:380px}.hero-slide-overlay{padding:1.5rem 1.5rem 3rem;justify-content:flex-end}.hero-slide-overlay h1,.hero-slide-overlay h2{font-size:1.6rem}.hero-slide-overlay p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.82rem}.hero-arrow{width:32px;height:44px;font-size:1.5rem}.nav-search-dropdown{display:none!important}.mobile-search-overlay{position:fixed;inset:0;z-index:200;background:var(--bg);display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(20px);transition:opacity .25s ease,transform .25s ease,visibility 0s .25s}.mobile-search-overlay.open{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .25s ease,transform .25s ease,visibility 0s 0s}.mobile-search-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg);z-index:1}.mobile-search-close{background:none;border:none;color:var(--text);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:50%;min-width:36px;min-height:36px}.mobile-search-close:active{background:var(--bg-muted)}.mobile-search-title{font-size:.9rem;font-weight:600;color:var(--text)}.mobile-search-body{padding:1.25rem 1rem;flex:1;overflow-y:auto}.mobile-search-field{margin-bottom:1rem}.mobile-search-field label{display:block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:.3rem}.mobile-search-field input,.mobile-search-field select{width:100%;padding:.7rem .85rem;border:1px solid var(--border);border-radius:var(--r);font-size:16px;font-family:var(--font);color:var(--text);background:var(--bg);-webkit-appearance:none;appearance:none}.mobile-search-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}.mobile-search-field input:focus,.mobile-search-field select:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 2px #1e3a5f1a}.mobile-search-row{display:flex;gap:.75rem}.mobile-search-half{flex:1}.mobile-search-go{width:100%;margin-top:.5rem;padding:.85rem;font-size:.9rem}.mobile-search-clear{display:block;width:100%;margin-top:.75rem;padding:.6rem;background:none;border:none;color:var(--jdt-red, #C41230);font-size:.85rem;font-weight:500;font-family:var(--font);cursor:pointer;text-align:center}.mobile-ac-wrap{position:relative}.mobile-ac-dropdown{display:none;position:absolute;top:calc(100% + 2px);left:0;right:0;background:var(--bg);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-lg);max-height:32vh;overflow-y:auto;z-index:10}.mobile-ac-dropdown .ac-item{padding:.65rem .85rem;cursor:pointer;border-bottom:1px solid var(--border)}.mobile-ac-dropdown .ac-item:last-child{border-bottom:none}.mobile-ac-dropdown .ac-item:active{background:var(--bg-warm)}.mobile-ac-dropdown .ac-label{font-size:.82rem;color:var(--text);font-weight:500}.mobile-ac-dropdown .ac-sub{font-size:.68rem;color:var(--text-3);margin-top:.1rem}.search-bar{flex-direction:column;gap:0;border-radius:var(--r-lg);width:100%;transform:none!important}.search-bar>:first-child{border-radius:var(--r-lg) var(--r-lg) 0 0}.search-bar>:last-child{border-radius:0 0 var(--r-lg) var(--r-lg)}.search-field{padding:.5rem .75rem}.search-field+.search-field{border-top:1px solid var(--border)}.search-text{flex:1}.search-date,.search-duration{width:auto;flex:0 0 auto}.search-clear{right:.75rem;width:28px;height:28px;background:var(--bg-warm);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.search-bar{position:relative;overflow:visible}.autocomplete-dropdown{position:absolute;left:0;right:0;top:100%;min-width:0;max-height:50vh;border-radius:0 0 var(--r) var(--r)}.search-autocomplete{position:static}.search-text{position:relative}.category-bar{position:static}.category-scroll{padding:.6rem 1rem}.cat-pill{padding:.45rem .9rem;font-size:.72rem}section#tours{padding:1rem}.tour-grid-inner{grid-template-columns:1fr}.addons-grid{grid-template-columns:repeat(2,1fr)}.card-arrow{display:none}.card-dots{bottom:6px}.modal-body{grid-template-columns:1fr;gap:1rem}.modal{margin:0;border-radius:0;min-height:100vh;overflow-x:clip;overflow-y:visible}.modal-overlay{padding:0}.modal-hero{height:280px}.booking-card{position:static}.modal-mobile-cta{display:flex;position:sticky;bottom:0;z-index:210;background:var(--bg);border-top:1px solid var(--border);padding:.75rem 1rem;align-items:center;justify-content:space-between;box-shadow:0 -2px 10px #00000014}.modal-mobile-cta .mobile-cta-price{font-size:1.1rem;font-weight:700;font-family:var(--mono);color:var(--navy)}.modal-mobile-cta .mobile-cta-price small{font-size:.7rem;color:var(--text-3);font-weight:400;font-family:var(--font)}.modal-mobile-cta .btn{min-height:48px;font-size:.9rem;padding:0 1.5rem}.private-custom-section{padding:2.5rem 1rem}.private-custom-inner{grid-template-columns:1fr;gap:1.5rem}.private-custom-image{order:-1}.private-custom-image img{max-height:200px}.why-section{padding:2.5rem 1rem}.why-grid{grid-template-columns:1fr 1fr;gap:.75rem}.why-card{padding:1rem .75rem}.how-section{padding:2.5rem 1rem}.how-grid{grid-template-columns:1fr 1fr;gap:.75rem}.journal-section{padding:2.5rem 1rem}.journal-grid{grid-template-columns:1fr;gap:1rem}.journal-img{height:160px}.journal-header{flex-direction:column;align-items:flex-start;gap:.75rem}.cta-section{padding:2rem 1rem}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn{width:100%;max-width:300px}.collection-section{margin-bottom:1.75rem}.dest-links{gap:.3rem .75rem}.footer-inner{grid-template-columns:1fr 1fr;gap:1.25rem}.footer-brand{grid-column:1}.footer-contact{grid-column:2}.footer-links{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.footer-destinations{grid-column:1 / -1}.footer-bottom{grid-column:1 / -1;gap:.5rem;align-items:center}.footer-badges-row{flex-direction:column;gap:.5rem}.footer-trust-badges{gap:.75rem}.trust-badge+.trust-badge{padding-left:.75rem}.footer-certifications{flex-direction:column;align-items:center;gap:.5rem}.gallery-strip{-webkit-overflow-scrolling:touch}.cart-panel{width:100%}.similar-tours{padding:1.25rem 1rem}.similar-grid{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;gap:.75rem;padding-bottom:.5rem}.similar-card{min-width:160px;flex-shrink:0;scroll-snap-align:start}.similar-img{height:90px}.category-bar:after{content:"";position:absolute;right:0;top:0;bottom:0;width:2.5rem;background:linear-gradient(to right,transparent,rgba(255,255,255,.95));pointer-events:none;z-index:1}}@media(max-width:380px){.addons-grid{grid-template-columns:1fr}.hero-slider{height:50vh;min-height:320px}}.content-page{max-width:800px;margin:0 auto;padding:2.5rem 2rem 4rem;line-height:1.7;color:var(--text)}.content-page.content-full{max-width:none;padding:0}#contentPage:has(.loading-spinner){min-height:100vh}.content-full .content-back{padding:1.5rem 2rem 0;max-width:860px;margin:0 auto;display:block}.content-page h1{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.8rem);font-weight:600;color:var(--navy);margin-bottom:.75rem;line-height:1.15;letter-spacing:-.01em}.content-page h2{font-family:var(--font-display);font-size:1.35rem;font-weight:600;color:var(--navy);margin:2.5rem 0 1rem;padding-bottom:.4rem;border-bottom:1px solid var(--gold)}.content-page h3{font-size:1rem;font-weight:600;color:var(--text);margin:1.5rem 0 .5rem}.content-page h4{font-size:.9rem;font-weight:700;color:var(--text-2);margin:1rem 0 .4rem}.content-page p{font-size:.9rem;color:var(--text-2);margin-bottom:1rem}.content-page ul,.content-page ol{margin:.5rem 0 1rem 1.5rem;font-size:.88rem;color:var(--text-2)}.content-page li{margin-bottom:.35rem}.content-page a{color:var(--navy);text-decoration:underline}.content-page a:hover{color:var(--jdt-red)}.content-page a.btn{text-decoration:none}.content-page a.btn-primary,.content-page a.btn-primary:hover{color:#fff}.content-page a.btn-secondary,.content-page a.btn-secondary:hover,.content-page strong{color:var(--text)}.content-page .content-kicker{display:inline-block;background:transparent;color:var(--gold);padding:0;border-radius:0;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;margin-bottom:.75rem}.content-page .content-kicker:before{content:"";display:inline-block;width:24px;height:1px;background:var(--gold);vertical-align:middle;margin-right:.75rem}.content-page .content-intro{font-size:1rem;color:var(--text-2);line-height:1.8;margin-bottom:1.5rem}.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin:2rem 0 2.5rem;padding:2rem 0;background:transparent;border-top:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;text-align:center}.about-stat-number{display:block;font-family:Crimson Pro,serif;font-size:2.4rem;font-weight:600;color:var(--navy);line-height:1.1}.about-stat-label{display:block;font-size:.72rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;margin-top:.3rem}.about-features{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin:1.5rem 0 2rem}.about-feature{padding:1.5rem;background:var(--bg-cream, #F6F1EA);border-radius:var(--r-sm);border:1px solid var(--border)}.about-feature-icon{font-size:1.6rem;margin-bottom:.5rem}.about-feature h3{font-size:.9rem;margin-bottom:.4rem;color:var(--navy)}.about-feature p{font-size:.82rem;line-height:1.6;color:var(--text-2);margin:0}.about-tour-types{padding-left:0;list-style:none}.about-tour-types li{position:relative;padding:.75rem 0 .75rem 1.5rem;border-bottom:1px solid var(--border);font-size:.88rem}.about-tour-types li:before{content:"";position:absolute;left:0;top:1rem;width:6px;height:6px;background:var(--jdt-red);border-radius:50%}.about-tour-types li:last-child{border-bottom:none}.about-offices{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin:1rem 0 2rem}.about-office{padding:1.25rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm)}.about-office h3{font-size:.9rem;color:var(--navy);margin-bottom:.5rem}.about-office p{font-size:.82rem;line-height:1.6;margin:0 0 .4rem}.about-office a{color:var(--navy)}.about-tagline{text-align:center;padding:2rem 1rem;margin:1.5rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.about-tagline-text{font-family:Crimson Pro,serif;font-size:1.5rem;font-style:italic;color:var(--navy);margin:0}@media(max-width:640px){.about-stats{grid-template-columns:repeat(2,1fr);gap:1rem;padding:1.25rem 1rem}.about-stat-number{font-size:1.6rem}.about-features,.about-offices{grid-template-columns:1fr}.about-tagline-text{font-size:1.25rem}}.content-page table{width:100%;border-collapse:collapse;margin:1rem 0 1.5rem;font-size:.85rem}.content-page th{background:var(--navy);color:#fff;padding:.6rem .85rem;text-align:left;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.content-page td{padding:.55rem .85rem;border-bottom:1px solid var(--border);color:var(--text-2)}.content-page tr:hover td{background:var(--bg-warm)}.faq-section{margin-bottom:2rem}.faq-section-title{font-size:1.05rem;font-weight:700;color:var(--navy);margin:1.5rem 0 .75rem;padding-bottom:.3rem;border-bottom:2px solid var(--jdt-red);cursor:default}.faq-item{border-bottom:1px solid var(--border)}.faq-question{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0;cursor:pointer;font-size:.88rem;font-weight:600;color:var(--text);transition:color var(--ease);user-select:none}.faq-question:hover{color:var(--navy)}.faq-question:after{content:"+";font-size:1.2rem;font-weight:400;color:var(--text-3);flex-shrink:0;transition:transform .2s ease}.faq-item.open .faq-question:after{content:"\2212";color:var(--jdt-red)}.faq-answer{display:none;padding:0 0 1rem;font-size:.85rem;color:var(--text-2);line-height:1.7}.faq-item.open .faq-answer{display:block}.contact-form{background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.5rem;margin-top:1.5rem}.contact-form label{display:block;font-size:.68rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;margin:.75rem 0 .25rem}.contact-form label:first-of-type{margin-top:0}.contact-form .required{color:var(--jdt-red);font-weight:400}.contact-form .form-input{margin-bottom:0}.contact-form textarea.form-input{min-height:100px}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.contact-success{text-align:center;padding:2rem;background:#00aa8d0f;border:1px solid rgba(0,170,141,.2);border-radius:var(--r-lg)}.contact-success h3{color:var(--green);margin-bottom:.5rem}.contact-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.contact-card{background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.25rem}.contact-card h3{font-size:.88rem;margin:0 0 .5rem;color:var(--navy)}.contact-card p{font-size:.82rem;margin-bottom:.25rem}.tips-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1.5rem 0}.tip-card{display:block;padding:1rem 1.1rem;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r-lg);text-decoration:none;color:var(--text);transition:all var(--ease)}.tip-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow)}.tip-card h3{font-size:.88rem;font-weight:600;margin:0 0 .25rem;color:var(--navy)}.tip-card p{font-size:.78rem;color:var(--text-3);margin:0;line-height:1.5}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.video-card{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden}.video-card .video-embed{position:relative;padding-bottom:56.25%;height:0}.video-card .video-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.video-card .video-label{padding:.6rem .85rem;font-size:.82rem;font-weight:600;color:var(--text)}.booking-steps{margin:1.5rem 0;counter-reset:step}.booking-step{display:flex;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--border)}.booking-step:last-child{border-bottom:none}.step-number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--gold);color:#fff;font-size:1.1rem;font-weight:800;flex-shrink:0}.booking-step h3{font-size:.95rem;font-weight:700;margin:0 0 .3rem;color:var(--text)}.booking-step p{font-size:.85rem;color:var(--text-2);margin:0}.page-detail-hero{margin:-2rem -2rem 2rem;height:340px;background-size:cover;background-position:center;border-radius:var(--r-lg) var(--r-lg) 0 0;position:relative}@media(max-width:768px){.page-detail-hero{margin:-1.5rem -1rem 1.5rem;height:240px;border-radius:0}}.gallery-lightbox{position:fixed;inset:0;z-index:10000;background:#000000eb;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.gallery-lightbox.active{opacity:1}.gallery-lb-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:4px;user-select:none;-webkit-user-drag:none}.gallery-lb-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s}.gallery-lb-close:hover{opacity:1}.gallery-lb-prev,.gallery-lb-next{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff14;border:none;color:#fff;font-size:2.5rem;cursor:pointer;width:48px;height:72px;border-radius:4px;display:flex;align-items:center;justify-content:center;opacity:.5;transition:opacity .2s,background .2s}.gallery-lb-prev:hover,.gallery-lb-next:hover{opacity:1;background:#ffffff26}.gallery-lb-prev{left:.75rem}.gallery-lb-next{right:.75rem}.gallery-lb-counter{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);color:#fff9;font-size:.8rem;font-family:var(--font);letter-spacing:.05em}@media(max-width:768px){.gallery-lb-prev,.gallery-lb-next{width:36px;height:56px;font-size:2rem}.gallery-lb-prev{left:.25rem}.gallery-lb-next{right:.25rem}.gallery-lb-img{max-width:96vw;max-height:80vh}}.content-back{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--text-3);text-decoration:none;margin-bottom:1rem;transition:color var(--ease);position:relative;z-index:2}.content-back:hover{color:var(--navy)}@media(max-width:768px){.content-page{padding:1.5rem 1rem 3rem}.contact-cards,.contact-form .form-row,.tips-grid,.video-grid{grid-template-columns:1fr}}:root{--text-muted: var(--text-3);--text-secondary: var(--text-2);--accent-green: var(--green);--accent-cherry: var(--jdt-red);--accent-blue: var(--navy);--font-mono: var(--mono);--bg-secondary: var(--bg-warm);--bg-tertiary: var(--bg-muted);--radius: var(--r);--border-hover: rgba(0, 0, 0, .15);--accent-amber: var(--gold)}.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.skeleton-card{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border)}.skeleton-img{height:240px;background:linear-gradient(110deg,var(--bg-muted) 30%,var(--bg-warm) 50%,var(--bg-muted) 70%);background-size:200% 100%;animation:shimmer 1.6s ease infinite}.skeleton-body{padding:1rem 1.1rem 1.1rem}.skeleton-line{height:12px;border-radius:6px;background:linear-gradient(110deg,var(--bg-muted) 30%,var(--bg-warm) 50%,var(--bg-muted) 70%);background-size:200% 100%;animation:shimmer 1.6s ease infinite;margin-bottom:.6rem}.skeleton-line:nth-child(1){width:75%;height:14px}.skeleton-line:nth-child(2){width:45%}.skeleton-line:nth-child(3){width:90%}.skeleton-line:last-child{margin-bottom:0}@media(max-width:768px){.skeleton-grid{grid-template-columns:1fr}}:focus-visible{outline:2px solid var(--navy);outline-offset:2px;border-radius:2px}.btn:focus-visible{outline-offset:3px;box-shadow:0 0 0 4px #003c6b26}.cat-pill:focus-visible{outline-offset:2px}.tour-card:focus-visible{outline:2px solid var(--navy);outline-offset:-2px;border-radius:var(--r-lg)}.itinerary-list.collapsed .itinerary-day:nth-child(n+6){display:none}.itinerary-toggle{display:inline-flex;align-items:center;gap:.3rem;background:none;border:none;color:var(--navy);font-size:.78rem;font-weight:600;cursor:pointer;padding:.4rem 0;font-family:var(--font);transition:color var(--ease)}.itinerary-toggle:hover{color:var(--navy-hover)}.itinerary-toggle .toggle-arrow{transition:transform .2s ease;display:inline-block}.itinerary-toggle.expanded .toggle-arrow{transform:rotate(180deg)}.dashboard-login{display:flex;align-items:center;justify-content:center;min-height:70vh;padding:2rem 1rem}.dashboard-login-card{max-width:420px;width:100%;background:var(--bg);border-radius:var(--r-lg);padding:2rem 2rem 2.5rem;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.login-heading{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:var(--text);margin-bottom:.35rem}.login-subtext{font-size:.82rem;color:var(--text-2);margin-bottom:1.5rem;line-height:1.5}.login-divider{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;color:var(--text-3);font-size:.72rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.dashboard-login-help{color:var(--text-3);font-size:.72rem;margin-top:1.25rem;line-height:1.6;text-align:center}.dashboard-login-help a{color:var(--navy);font-weight:500}.auth-oauth-buttons{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.25rem}.auth-oauth-btn{display:flex;align-items:center;justify-content:center;gap:.6rem;width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg);color:var(--text);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .15s ease;min-height:48px}.auth-oauth-btn:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.auth-apple{background:#000;color:#fff;border-color:#000}.auth-apple:hover{background:#1a1a1a}.auth-google{background:#fff;color:#333}.auth-divider{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;color:var(--text-3);font-size:.75rem;text-transform:lowercase}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-email-row{display:flex;gap:.5rem}.auth-email-row .form-input{flex:1}.auth-email-row .btn{white-space:nowrap;flex-shrink:0}.auth-cfm-section{border:1px solid var(--border);border-radius:var(--r-md);padding:.75rem 1rem}.auth-cfm-section summary{cursor:pointer;font-size:.85rem;color:var(--text-2);font-weight:500}.auth-cfm-section summary:hover{color:var(--text)}@media(max-width:480px){.auth-email-row{flex-direction:column}.auth-email-row .btn{width:100%}}.dashboard-error{color:var(--jdt-red);font-size:.85rem}.dashboard-loading{max-width:800px;margin:2rem auto;padding:0 1rem}.loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--navy);border-radius:50%;animation:spin .8s linear infinite;margin:2rem auto 0}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--bg-muted) 25%,var(--bg-warm) 50%,var(--bg-muted) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--r)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dashboard-header{position:relative;height:220px;background:var(--navy);background-size:cover;background-position:center;border-radius:0 0 var(--r-lg) var(--r-lg);overflow:hidden}.dashboard-header-overlay{position:absolute;inset:0;background:linear-gradient(to top,#000f1ebf,#000f1e73 55%,#000f1e26);display:flex;align-items:flex-end}.dashboard-header-content{padding:1.5rem 2rem;color:#fff;width:100%}.dashboard-header-content h1{font-size:1.5rem;margin:.4rem 0 .5rem;font-weight:700;line-height:1.3;letter-spacing:-.01em;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.4);text-shadow:0 0 20px rgba(0,0,0,.9),0 0 40px rgba(0,0,0,.6),0 2px 4px rgba(0,0,0,.9)}.dashboard-badge{background:#ffffff26;border:1px solid rgba(255,255,255,.3);padding:.2rem .6rem;border-radius:4px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.dashboard-meta{font-size:.8rem;opacity:.92;display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.dashboard-dot{width:3px;height:3px;background:#ffffff80;border-radius:50%}.dashboard-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);position:sticky;top:60px;background:var(--bg);z-index:10;padding:0 1rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.dashboard-tabs::-webkit-scrollbar{display:none}.dashboard-tabs-wrap{position:relative}.dashboard-tabs-wrap:before,.dashboard-tabs-wrap:after{content:"";position:absolute;top:0;bottom:0;width:40px;pointer-events:none;z-index:11;opacity:0;transition:opacity .2s}.dashboard-tabs-wrap:before{left:0;background:linear-gradient(to right,var(--bg, #fff) 30%,transparent)}.dashboard-tabs-wrap:after{right:0;background:linear-gradient(to left,var(--bg, #fff) 30%,transparent)}.dashboard-tabs-wrap.fade-left:before{opacity:1}.dashboard-tabs-wrap.fade-right:after{opacity:1}.dashboard-tab{padding:.8rem 1.2rem;font-size:.85rem;font-weight:500;color:var(--text-3);border:none;background:none;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;transition:all var(--ease)}.dashboard-tab:hover{color:var(--navy)}.dashboard-tab.active{color:var(--navy);border-bottom-color:var(--navy)}.dashboard-content{max-width:800px;margin:0 auto;padding:1.5rem 1rem}.dashboard-section{margin-bottom:2rem}.dashboard-section h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text)}.dashboard-empty{color:var(--text-3);font-size:.9rem;text-align:center;padding:3rem 1rem}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.dashboard-card{background:var(--bg-warm);border-radius:var(--r);padding:1rem;border:1px solid var(--border)}.dashboard-card-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin-bottom:.3rem}.dashboard-card-value{font-size:.95rem;font-weight:600;color:var(--text)}.dashboard-status{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.dashboard-status--paid{background:#dcfce7;color:#166534}.dashboard-status--pending{background:#fef3c7;color:#92400e}.dashboard-travelers{display:flex;flex-direction:column;gap:.5rem}.dashboard-traveler{background:var(--bg-warm);border-radius:var(--r);padding:.8rem 1rem;border:1px solid var(--border)}.dashboard-traveler-name{font-weight:600;font-size:.9rem}.dashboard-traveler-group{font-size:.8rem;color:var(--text-3)}.dashboard-traveler-detail{font-size:.8rem;color:var(--text-3);margin-top:.2rem}.dashboard-traveler-allergy{color:#b45309}.dashboard-addons{display:flex;flex-direction:column;gap:.5rem}.dashboard-addon{display:flex;align-items:center;gap:1rem;padding:.7rem 1rem;background:var(--bg-warm);border-radius:var(--r);border:1px solid var(--border)}.dashboard-addon-name{flex:1;font-weight:500;font-size:.9rem}.dashboard-addon-date{font-size:.8rem;color:var(--text-3)}.dashboard-itinerary{display:flex;flex-direction:column;gap:0}.dashboard-day{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--border)}.dashboard-day:last-child{border-bottom:none}.dashboard-day-num{min-width:50px;font-size:.75rem;font-weight:600;color:var(--navy);text-transform:uppercase;padding-top:.1rem}.dashboard-day-content{flex:1}.dashboard-day-title{font-size:.9rem;font-weight:500;line-height:1.4}.dashboard-day-hotel{font-size:.8rem;color:var(--text-3);margin-top:.25rem}.dashboard-day-meals{display:flex;gap:.3rem;margin-top:.4rem}.meal-dot{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:.6rem;font-weight:700}.meal-b{background:#fef3c7;color:#92400e}.meal-l{background:#dcfce7;color:#166534}.meal-d{background:#dbeafe;color:#1e40af}.dashboard-payment-summary{background:var(--bg-warm);border-radius:var(--r-lg);padding:1.5rem;border:1px solid var(--border)}.dashboard-progress-bar{height:8px;background:var(--bg-muted);border-radius:4px;overflow:hidden;margin-bottom:1rem}.dashboard-progress-fill{height:100%;background:var(--navy);border-radius:4px;transition:width .5s ease}.dashboard-payment-amounts{display:flex;justify-content:space-between;margin-bottom:1rem}.dashboard-amount{font-size:1.1rem;font-weight:700;display:block;margin-top:.2rem}.dashboard-overdue{color:var(--jdt-red)}.dashboard-due-date{font-size:.85rem;color:var(--text-3);padding:.5rem 0;border-top:1px solid var(--border)}.dashboard-due-date.dashboard-overdue{color:var(--jdt-red);font-weight:500}.dashboard-paid-badge{text-align:center;padding:.6rem;background:#dcfce7;color:#166534;border-radius:var(--r);font-weight:600;font-size:.9rem;margin-top:.5rem}.dashboard-payment-contact{font-size:.8rem;color:var(--text-3);margin-top:.75rem;line-height:1.5}.dashboard-payment-contact a{color:var(--navy)}.invoice-table{border:1px solid var(--border);border-radius:var(--r);overflow:hidden}.invoice-row{display:grid;grid-template-columns:80px 1fr 90px 90px 100px 120px;gap:0;padding:.6rem .75rem;border-bottom:1px solid var(--border);font-size:.8rem;align-items:center}.invoice-row:last-child{border-bottom:none}.invoice-header{background:var(--bg-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-3);font-weight:600}.invoice-col-num,.invoice-col-action{text-align:right}.btn-invoice{background:var(--bg);border:1px solid var(--navy);color:var(--navy);padding:.3rem .7rem;border-radius:var(--r);font-size:.75rem;font-weight:500;cursor:pointer;transition:all var(--ease)}.btn-invoice:hover{background:var(--navy);color:#fff}@media(max-width:640px){.invoice-row{grid-template-columns:1fr 1fr;gap:.3rem}.invoice-header{display:none}.invoice-col-action{grid-column:1 / -1;text-align:left;margin-top:.3rem}}.dashboard-payment-history{display:flex;flex-direction:column;gap:0}.dashboard-payment-row{display:flex;align-items:center;padding:.7rem 0;border-bottom:1px solid var(--border);font-size:.85rem}.dashboard-payment-row:last-child{border-bottom:none}.dashboard-payment-date{width:120px;color:var(--text-3)}.dashboard-payment-method{flex:1}.dashboard-payment-amount{font-weight:600}.dashboard-doc-intro{font-size:.85rem;color:var(--text-3);margin-bottom:1.5rem;line-height:1.5}.dashboard-doc-checklist{margin-bottom:1.5rem}.dashboard-doc-item{display:flex;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--border);align-items:flex-start}.dashboard-doc-icon{font-size:1.1rem;min-width:24px;text-align:center}.dashboard-doc-name{font-weight:500;font-size:.9rem}.dashboard-doc-desc{font-size:.8rem;color:var(--text-3)}.dashboard-upload-zone{border:2px dashed var(--border-hover);border-radius:var(--r-lg);padding:2rem;text-align:center;background:var(--bg-warm);transition:border-color var(--ease),background var(--ease);cursor:pointer}.dashboard-upload-zone:hover,.dashboard-upload-zone.dragover{border-color:var(--navy);background:#f0f5fa}.dashboard-upload-icon{font-size:2rem;color:var(--navy);margin-bottom:.5rem}.dashboard-upload-btn{color:var(--navy);font-weight:600;cursor:pointer;text-decoration:underline}.dashboard-upload-hint{font-size:.75rem;color:var(--text-3);margin-top:.3rem}.dashboard-doc-note{font-size:.8rem;color:var(--text-3);margin-top:1.5rem;line-height:1.5}.doc-category{border:1px solid var(--border);border-radius:var(--r-lg);padding:1.25rem;margin-bottom:1rem;background:var(--bg)}.doc-category-header{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:.75rem}.doc-category .dashboard-upload-zone{padding:1.25rem;margin-top:.5rem}.doc-file-list{margin:.5rem 0}.doc-file-row{display:flex;align-items:center;gap:.5rem;padding:.5rem .6rem;border-radius:var(--r);background:var(--bg-warm);margin-bottom:.35rem;font-size:.85rem}.doc-file-icon{font-size:1rem;flex-shrink:0}.doc-file-name{font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-file-meta{font-size:.75rem;color:var(--text-3);white-space:nowrap}.doc-file-delete{background:none;border:none;font-size:1.1rem;color:var(--text-3);cursor:pointer;padding:0 .3rem;line-height:1;transition:color .15s}.doc-file-delete:hover{color:#b91c1c}.doc-upload-status{min-height:0}.doc-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:99px;vertical-align:middle;margin-left:.5rem;letter-spacing:.02em;text-transform:uppercase}.doc-badge-pending{background:#f3f4f6;color:#6b7280}.doc-badge-submitted{background:#dbeafe;color:#1e40af}.doc-badge-review{background:#fef3c7;color:#92400e}.doc-badge-done{background:#dcfce7;color:#166534}.dashboard-upload-progress{margin-top:.75rem}.dashboard-upload-filename{font-size:.85rem;font-weight:500;margin-bottom:.4rem}.dashboard-upload-warning{font-size:.78rem;color:#92400e;background:#fef3c7;border-radius:4px;padding:.35rem .6rem;margin-bottom:.5rem}.dashboard-upload-success{margin-top:.75rem;padding:.6rem 1rem;background:#dcfce7;color:#166534;border-radius:var(--r);font-size:.85rem;font-weight:500}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:.4rem;vertical-align:middle}.status-done{background:#16a34a}.status-action{background:#f59e0b}.status-wait{background:#94a3b8}.dashboard-profile-card{background:var(--bg-warm);border-radius:var(--r-lg);padding:1.25rem;border:1px solid var(--border)}.dashboard-profile-row{display:flex;justify-content:space-between;padding:.4rem 0;font-size:.85rem;border-bottom:1px solid var(--border)}.dashboard-profile-row:last-child{border-bottom:none}.dashboard-profile-row span:last-child{font-weight:500}.checklist-legend{font-size:.75rem;color:var(--text-3);margin-bottom:1rem}.checklist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.checklist-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r);padding:1rem;cursor:pointer;transition:all var(--ease)}.checklist-card:hover{border-color:var(--navy);box-shadow:var(--shadow)}.checklist-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.checklist-icon{font-size:1.2rem}.checklist-card-title{font-weight:600;font-size:.85rem;margin-bottom:.25rem}.checklist-card-desc{font-size:.75rem;color:var(--text-3);line-height:1.4}.dashboard-status--wait{background:#e2e8f0;color:#475569}.dashboard-status--deposit{background:#dbeafe;color:#1e40af}.dashboard-status--info{background:#ede9fe;color:#5b21b6}.meal-card{padding:1.25rem!important}.meal-options{display:flex;gap:1.5rem}.meal-radio{display:flex;align-items:center;gap:.4rem;font-size:.9rem;cursor:pointer}.meal-radio input{accent-color:var(--navy)}.dashboard-flights{display:flex;flex-direction:column;gap:.75rem}.flight-card{background:var(--bg-warm);border-radius:var(--r);padding:1rem;border:1px solid var(--border)}.flight-card-route{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.flight-airport{font-size:1.2rem;font-weight:700;color:var(--navy);letter-spacing:.05em}.flight-arrow{color:var(--text-3);font-size:1rem}.flight-card-details{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;font-size:.8rem}.flight-card-details .dashboard-card-label{margin-right:.3rem}.dashboard-footer{text-align:center;padding:1.5rem;border-top:1px solid var(--border);margin-top:2rem}.dashboard-logout{background:none;border:1px solid var(--border);border-radius:var(--r);padding:.5rem 1.5rem;font-size:.8rem;color:var(--text-3);cursor:pointer;transition:all var(--ease)}.dashboard-logout:hover{border-color:var(--navy);color:var(--navy)}@media(max-width:640px){.dashboard-header{height:180px}.dashboard-header-content{padding:1rem}.dashboard-header-content h1{font-size:1.1rem}.dashboard-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.dashboard-tab{padding:.7rem .9rem;font-size:.8rem;white-space:nowrap}.dashboard-grid{grid-template-columns:1fr 1fr}.dashboard-payment-amounts{flex-direction:column;gap:.75rem}.dashboard-meta{font-size:.75rem}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#0003}.admin-container{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}.admin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.admin-header h1{font-size:1.5rem;font-weight:700;color:var(--text);margin:0}.admin-user{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-3)}.admin-user img{width:28px;height:28px;border-radius:50%}.admin-toolbar{display:flex;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap;align-items:center}.admin-search{flex:1;min-width:200px;padding:.55rem .85rem;border:1px solid var(--border);border-radius:var(--r);font-size:.85rem;font-family:var(--font);background:var(--bg);transition:border-color var(--ease)}.admin-search:focus{outline:none;border-color:var(--navy)}.admin-filter{padding:.55rem .85rem;border:1px solid var(--border);border-radius:var(--r);font-size:.85rem;font-family:var(--font);background:var(--bg);cursor:pointer}.admin-table-wrap{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:var(--bg)}.admin-table{width:100%;border-collapse:collapse;font-size:.85rem}.admin-table th{text-align:left;padding:.65rem .85rem;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);background:var(--bg-warm);border-bottom:1px solid var(--border)}.admin-table td{padding:.65rem .85rem;border-bottom:1px solid rgba(0,0,0,.04);vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:var(--bg-warm)}.admin-tour-row{cursor:pointer;transition:background var(--ease)}.admin-tour-title{font-weight:500;color:var(--text);display:flex;align-items:center;gap:.5rem}.admin-tour-thumb{width:40px;height:28px;object-fit:cover;border-radius:4px;flex-shrink:0}.admin-badge{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.02em}.admin-badge-active{background:#dcfce7;color:#166534}.admin-badge-inactive{background:#fef2f2;color:#991b1b}.admin-badge-type{background:var(--bg-muted);color:var(--text-2)}.admin-price{font-variant-numeric:tabular-nums;color:var(--text-2)}.admin-deps{text-align:center;color:var(--text-3)}.admin-pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem}.admin-pagination button{padding:.4rem .75rem;border:1px solid var(--border);border-radius:var(--r);background:var(--bg);font-size:.8rem;cursor:pointer;font-family:var(--font);transition:background var(--ease)}.admin-pagination button:hover:not(:disabled){background:var(--bg-warm)}.admin-pagination button:disabled{opacity:.4;cursor:default}.admin-pagination .page-info{font-size:.8rem;color:var(--text-3)}.admin-edit{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.5rem}.admin-edit-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.admin-edit-header h2{font-size:1.15rem;font-weight:600;margin:0}.admin-back{font-size:.85rem;color:var(--navy);text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;gap:.3rem}.admin-back:hover{text-decoration:underline}.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-field{display:flex;flex-direction:column;gap:.3rem}.admin-field.full{grid-column:1 / -1}.admin-field label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3)}.admin-field input,.admin-field select,.admin-field textarea{padding:.55rem .75rem;border:1px solid var(--border);border-radius:var(--r);font-size:.85rem;font-family:var(--font);background:var(--bg);transition:border-color var(--ease)}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{outline:none;border-color:var(--navy)}.admin-field textarea{min-height:100px;resize:vertical}.admin-section-title{font-size:.85rem;font-weight:600;color:var(--text);margin:1.5rem 0 .75rem;padding-top:1rem;border-top:1px solid var(--border)}.admin-actions{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.admin-btn{padding:.6rem 1.5rem;border:none;border-radius:var(--r);font-size:.85rem;font-weight:600;font-family:var(--font);cursor:pointer;transition:background var(--ease),transform .1s}.admin-btn:active{transform:scale(.98)}.admin-btn-save{background:var(--navy);color:#fff}.admin-btn-save:hover{background:var(--navy-hover)}.admin-btn-cancel{background:var(--bg-muted);color:var(--text-2)}.admin-btn-cancel:hover{background:var(--border)}.admin-toast{position:fixed;bottom:2rem;right:2rem;padding:.75rem 1.25rem;border-radius:var(--r);font-size:.85rem;font-weight:500;color:#fff;background:var(--navy);box-shadow:var(--shadow-lg);z-index:9999;animation:adminToastIn .3s ease}.admin-toast.error{background:var(--jdt-red)}@keyframes adminToastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.test-user-btn{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.1rem .45rem;border-radius:3px;border:1px solid var(--border-1, #d1d5db);background:transparent;color:var(--text-3, #6b7280);cursor:pointer;vertical-align:middle;margin-left:.35rem;line-height:1.4;transition:all .15s ease}.test-user-btn:hover{border-color:#f59e0b;color:#d97706;background:#fffbeb}.test-user-btn.active{background:#fef3c7;border-color:#f59e0b;color:#92400e}.test-user-btn.active:hover{background:#fde68a}.admin-dep-table{width:100%;border-collapse:collapse;font-size:.8rem;margin-top:.5rem}.admin-dep-table th{text-align:left;padding:.4rem .5rem;font-weight:600;font-size:.7rem;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border)}.admin-dep-table td{padding:.4rem .5rem;border-bottom:1px solid rgba(0,0,0,.03)}.admin-dep-table input{width:100%;padding:.35rem .5rem;border:1px solid var(--border);border-radius:4px;font-size:.8rem;font-family:var(--font)}.admin-dep-table input:focus{outline:none;border-color:var(--navy)}.admin-soldout-toggle{cursor:pointer;font-size:.75rem;padding:.2rem .5rem;border-radius:999px;border:none;font-weight:600}.admin-login{max-width:400px;margin:6rem auto;text-align:center;padding:0 1.5rem}.admin-login h1{font-size:1.3rem;margin-bottom:.5rem}.admin-login p{color:var(--text-3);font-size:.85rem;margin-bottom:1.5rem}.admin-login-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:1px solid var(--border);border-radius:var(--r);background:var(--bg);font-size:.9rem;font-weight:500;font-family:var(--font);cursor:pointer;transition:background var(--ease),box-shadow var(--ease)}.admin-login-btn:hover{background:var(--bg-warm);box-shadow:var(--shadow)}.admin-login-error{color:var(--jdt-red);font-size:.85rem;margin-bottom:1rem}@media(max-width:768px){.admin-container{padding:1rem}.admin-header{flex-direction:column;align-items:flex-start;gap:.5rem}.admin-form-grid{grid-template-columns:1fr}.admin-table th:nth-child(4),.admin-table td:nth-child(4),.admin-table th:nth-child(5),.admin-table td:nth-child(5){display:none}.admin-toast{left:1rem;right:1rem;bottom:1rem}.admin-container table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;max-width:100%;font-size:.8rem}.admin-container table th,.admin-container table td{white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.admin-toolbar{flex-wrap:wrap;gap:.5rem}.admin-toolbar .admin-search,.admin-toolbar .admin-filter,.admin-toolbar select,.admin-toolbar input[type=text]{width:100%;min-width:0}.admin-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-tabs button{white-space:nowrap;flex-shrink:0}#contentPage [style*=auto-fill],#contentPage [style*=auto-fit]{grid-template-columns:1fr!important}.search-bar:focus-within,.search-bar.search-focused{transform:none!important;box-shadow:none!important}.search-bar,.search-field,.cat-pill,.btn,button,select,input{touch-action:manipulation}.nav-search-dropdown{position:relative}input,select,textarea{font-size:max(16px,1rem)!important}}.profile-card{background:var(--bg-2);border-radius:var(--radius);padding:1rem 1.25rem;border:1px solid var(--border)}.profile-card-title{font-weight:600;color:var(--text-2);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.profile-edit-overlay{position:fixed;inset:0;z-index:1000;background:#14120e80;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;overflow-y:auto;opacity:0;transition:opacity .2s ease}.profile-edit-overlay.open{opacity:1}.profile-edit-panel{background:var(--bg);border-radius:var(--r-lg);max-width:680px;width:100%;box-shadow:var(--shadow-2xl);transform:translateY(12px);transition:transform .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.profile-edit-overlay.open .profile-edit-panel{transform:translateY(0)}.profile-edit-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem 1.25rem;border-bottom:1px solid var(--border)}.profile-edit-header h2{font-family:var(--font-display);font-size:1.4rem;font-weight:500;color:var(--text);margin:0;letter-spacing:-.01em}.profile-edit-close{width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--text-2);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.profile-edit-close:hover{background:var(--bg-muted);border-color:var(--border-hover)}.profile-edit-body{padding:1.75rem 2rem 2rem;max-height:calc(100vh - 10rem);overflow-y:auto}.profile-edit-section{margin-bottom:2rem}.profile-edit-section:last-child{margin-bottom:0}.profile-edit-section-title{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--gold-dim);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--gold-border)}.profile-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 1.5rem}.profile-edit-grid--full{grid-template-columns:1fr}.profile-input-group{display:flex;flex-direction:column;gap:.4rem}.profile-input-group--full{grid-column:1 / -1}.profile-input-label{font-size:.82rem;font-weight:500;color:var(--text-2);letter-spacing:.01em}.profile-input-label .optional-tag{font-weight:400;color:var(--text-3);font-size:.72rem;margin-left:.3rem}.profile-input,.profile-select{height:var(--input-h-sm);padding:0 var(--input-pad-x);border:1px solid var(--border);border-radius:var(--r);font-family:inherit;font-size:.92rem;background:var(--bg-input);color:var(--text);transition:border-color .15s,box-shadow .15s;width:100%}.profile-input::placeholder{color:var(--input-placeholder)}.profile-input:focus,.profile-select:focus{outline:none;border-color:var(--navy);box-shadow:var(--focus-ring);background:#fff}.profile-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%237A756E'%3E%3Cpath d='M6 8.5L1.5 4h9L6 8.5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}.profile-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid rgba(0,0,0,.04)}.profile-toggle-row:last-child{border-bottom:none}.profile-toggle-label{font-size:.9rem;color:var(--text)}.profile-toggle{position:relative;width:44px;height:24px;background:var(--border);border-radius:12px;cursor:pointer;transition:background .2s;border:none;padding:0}.profile-toggle.active{background:var(--navy)}.profile-toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.profile-toggle.active:after{transform:translate(20px)}.profile-edit-collapse-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 0;background:none;border:none;font-family:inherit;font-size:.82rem;font-weight:500;color:var(--navy);cursor:pointer;margin-top:.75rem}.profile-edit-collapse-btn svg{transition:transform .2s}.profile-edit-collapse-btn.expanded svg{transform:rotate(90deg)}.profile-edit-collapsible{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.profile-edit-collapsible.expanded{grid-template-rows:1fr}.profile-edit-collapsible>div{overflow:hidden}.profile-edit-footer{display:flex;align-items:center;gap:.75rem;padding:1.25rem 2rem;border-top:1px solid var(--border);background:var(--bg-warm)}.profile-edit-footer .btn{min-width:140px;justify-content:center}.profile-edit-status{flex:1;font-size:.85rem;text-align:right}.profile-edit-status--success{color:var(--green)}.profile-edit-status--error{color:var(--error)}.profile-readonly-notice{background:var(--bg-cream);border:1px solid var(--gold-border);border-radius:var(--r);padding:.85rem 1rem;margin-bottom:1.25rem}.profile-readonly-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--gold-dim);margin-bottom:.3rem}.profile-readonly-value{font-size:.95rem;font-weight:500;color:var(--text);margin-bottom:.4rem}.profile-readonly-hint{font-size:.78rem;color:var(--text-3);font-style:italic}.staff-avatar{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;background:#b45309;color:#fff;font-size:.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:1.5px solid rgba(0,0,0,.3);line-height:1}.account-page{max-width:720px;margin:0 auto;padding:1.5rem 0}.account-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.25rem;border-bottom:1px solid var(--border);margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.account-sections{display:flex;flex-direction:column;gap:2rem}.account-section{min-height:80px}.dashboard-account-link{position:absolute;top:.75rem;right:.75rem;display:flex;align-items:center;gap:.4rem;color:#ffffffe6;text-decoration:none;font-size:.78rem;font-weight:500;background:#00000040;padding:.3rem .65rem .3rem .35rem;border-radius:20px;transition:background .15s}.dashboard-account-link:hover{background:#0006}a.dashboard-account-link,a.dashboard-account-link:link,a.dashboard-account-link:visited,a.dashboard-account-link:hover{color:#ffffffe6;text-decoration:none}.dashboard-account-icon{width:24px;height:24px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600}.trips-grid{display:grid;grid-template-columns:1fr;gap:.75rem}.trip-card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .15s,box-shadow .15s}.trip-card:hover{border-color:var(--navy);box-shadow:0 2px 8px #003c6b14}.trip-card--current{border-color:var(--navy);border-width:2px}.trip-card--past{opacity:.75}.trip-card--past:hover{opacity:1}.trip-card-image{height:120px;background-size:cover;background-position:center}.trip-card-body{padding:.85rem 1rem}.trip-card-title{font-weight:600;font-size:.9rem;color:var(--text-1);line-height:1.3}.trip-card-meta{font-size:.78rem;color:var(--text-3);margin-top:.2rem}.trip-section-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin-bottom:.5rem}@media(max-width:768px){.profile-edit-grid{grid-template-columns:1fr;gap:1rem}.profile-edit-overlay{padding:1rem .5rem;align-items:flex-start}.profile-edit-header{padding:1.25rem 1.25rem 1rem}.profile-edit-body{padding:1.25rem}.profile-edit-footer{padding:1rem 1.25rem;flex-wrap:wrap}.profile-edit-footer .btn{flex:1;min-width:0}}.collection-hero{position:relative;height:480px;background-size:cover;background-position:center;overflow:hidden}.collection-hero-overlay{position:absolute;inset:0;background:linear-gradient(160deg,#000000a6,#0000004d 50%,#0000000d 80%);display:flex;flex-direction:column;justify-content:center;padding:3rem;max-width:var(--max-w, 1320px);margin:0 auto;color:#fff}.collection-badge{display:inline-block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#ffffffe6;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);border-radius:99px;padding:.25rem .75rem;width:fit-content;margin-bottom:.75rem}.collection-hero-overlay h1{font-family:var(--font-display);font-size:2.8rem;font-weight:700;line-height:1.1;margin-bottom:.5rem;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.35)}.collection-hero-overlay p{font-size:1.05rem;color:#ffffffd9;max-width:560px}.collection-highlights{max-width:var(--max-w, 1320px);margin:0 auto;padding:1.5rem 1.25rem}.collection-highlights-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:.75rem;display:block}.collection-highlights-scroll{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.collection-hl-card{padding:1rem;background:var(--bg-warm);border-radius:var(--r);border:1px solid var(--border)}.collection-hl-icon{font-size:1.5rem;display:block;margin-bottom:.5rem}.collection-hl-card h3{font-size:.85rem;font-weight:600;margin-bottom:.25rem}.collection-hl-card p{font-size:.78rem;color:var(--text-3);line-height:1.5}.collection-tours{max-width:var(--max-w, 1320px);margin:0 auto;padding:2rem 1.25rem}.collection-tours .tour-image{height:auto;aspect-ratio:16 / 10}.collection-tours-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1.5rem}.collection-section-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}.collection-tours-header h2{font-family:var(--font-display);font-size:1.6rem;margin-top:.15rem}.collection-see-all{font-size:.82rem;font-weight:600;color:var(--navy);text-decoration:none}.collection-see-all:hover{text-decoration:underline}.collection-private-cta{max-width:var(--max-w, 1320px);margin:0 auto;padding:2rem 2.5rem;background:var(--bg-warm);border-radius:var(--r-lg);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:2rem;margin-left:1.25rem;margin-right:1.25rem}.collection-private-cta p{font-size:.9rem;color:var(--text-2);flex:1}.collection-faq{max-width:var(--max-w, 1320px);margin:0 auto;padding:2rem 1.25rem 3rem}.collection-faq h2{font-family:var(--font-display);font-size:1.6rem;margin-top:.15rem;margin-bottom:1.5rem}.collection-faq-list{list-style:none;padding:0}.collection-faq-list li{border-bottom:1px solid var(--border)}.collection-faq-list summary{padding:1rem 0;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.collection-faq-ind{font-size:1.2rem;color:var(--text-3);flex-shrink:0;transition:transform .2s}details[open] .collection-faq-ind{transform:rotate(45deg)}.collection-faq-answer{padding:0 0 1rem;font-size:.88rem;color:var(--text-2);line-height:1.7}@media(max-width:768px){.collection-hero{height:360px}.collection-hero-overlay{padding:1.5rem;justify-content:flex-end}.collection-hero-overlay h1{font-size:1.8rem}.collection-private-cta{flex-direction:column;text-align:center;padding:1.5rem}}.collection-see-also{max-width:900px;margin:2rem auto 0;padding:1.5rem 2rem}.collection-see-also-links{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.collection-see-also-links a{font-size:.85rem;padding:.4rem 1rem;border:1px solid var(--border);border-radius:999px;color:var(--jdt-navy);text-decoration:none;transition:background .15s,color .15s}.collection-see-also-links a:hover{background:var(--jdt-navy);color:#fff}.deals-hero{background:var(--navy);padding:4rem 2rem 3.5rem;text-align:center}.deals-hero-inner{max-width:640px;margin:0 auto}.deals-hero h1{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.6rem);font-weight:700;color:#fff;line-height:1.15;margin-bottom:.75rem}.deals-hero p{font-size:.95rem;color:#ffffffbf;line-height:1.7}.deals-hero .collection-badge{margin:0 auto 1rem}.deals-section{max-width:var(--max-w, 1320px);margin:0 auto;padding:3rem 1.25rem 1rem}.deals-section h2{font-family:var(--font-display);font-size:1.6rem;margin-top:.15rem;margin-bottom:.25rem}.deals-section-sub{font-size:.85rem;color:var(--text-3);margin-bottom:1.5rem}.deals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.deals-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;cursor:pointer;transition:box-shadow .2s,transform .2s}.deals-card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-2px)}.deals-card-img{height:180px;background-size:cover;background-position:center;position:relative}.deals-countdown{position:absolute;bottom:.6rem;left:.6rem;background:#000000b3;color:#fff;font-size:.68rem;font-weight:700;padding:.2rem .6rem;border-radius:4px;letter-spacing:.03em}.deals-urgent .deals-countdown{background:#b91c1c}.deals-soon .deals-countdown{background:#92600a}.deals-discount{position:absolute;top:.6rem;right:.6rem;background:var(--navy);color:#fff;font-size:.68rem;font-weight:700;padding:.25rem .65rem;border-radius:4px;letter-spacing:.03em}.deals-card-body{padding:1rem 1.1rem 1.1rem}.deals-card-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;line-height:1.3;margin-bottom:.35rem}.deals-card-meta{display:flex;gap:.5rem;font-size:.75rem;color:var(--text-3);margin-bottom:.5rem;flex-wrap:wrap}.deals-card-price{font-size:.85rem;color:var(--text-2);margin-bottom:.75rem}.deals-card-price strong{color:var(--navy)}@media(max-width:560px){.deals-grid{grid-template-columns:1fr}.deals-hero{padding:2.5rem 1.5rem 2rem}}.explore-header{max-width:var(--max-w, 1320px);margin:0 auto;padding:3rem 1.25rem 0}.explore-header h1{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.6rem);font-weight:700;color:var(--navy);margin-bottom:.25rem}.explore-intro{font-size:.9rem;color:var(--text-3);margin-bottom:1.5rem}.explore-pills{display:flex;gap:.4rem;margin-bottom:.5rem}.explore-pill{padding:.4rem 1rem;border-radius:99px;border:1.5px solid var(--border);background:transparent;font-size:.82rem;font-weight:600;color:var(--text-2);cursor:pointer;font-family:var(--font-ui);transition:all .15s}.explore-pill:hover{border-color:var(--navy);color:var(--navy)}.explore-pill.active{background:var(--navy);border-color:var(--navy);color:#fff}.explore-grid{max-width:var(--max-w, 1320px);margin:0 auto;padding:1.5rem 1.25rem 4rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.explore-card{display:block;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}.explore-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.explore-card-img{height:180px;aspect-ratio:16/9;background-size:cover;background-position:center;contain:layout}.explore-card-noimg{background:var(--bg-muted);display:flex;align-items:center;justify-content:center}.explore-card-body{padding:1rem}.explore-card-body h3{font-size:1rem;font-weight:600;line-height:1.3;margin-bottom:.35rem}.explore-card-body p{font-size:.82rem;color:var(--text-3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.explore-card-body time{font-size:.72rem;color:var(--text-4, var(--text-3));margin-top:.4rem;display:block}@media(max-width:560px){.explore-grid{grid-template-columns:1fr}}.page-search-results{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}.explore-grid-search{padding:0 0 1rem}.pillar-section{margin-bottom:4rem}.pillar-section-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.875rem;border-bottom:1px solid var(--border);position:relative}.pillar-section-header:after{content:"";position:absolute;bottom:-1px;left:0;width:48px;height:2px;background:var(--gold)}.pillar-section-header h2{font-family:var(--font-display);font-size:1.45rem;font-style:italic;font-weight:600;color:var(--text);margin:0;letter-spacing:-.01em}.pillar-section-sub{font-size:.75rem;color:var(--text-3)}@keyframes pillar-ken-burns{0%{transform:scale(1.07)}to{transform:scale(1)}}.pillar-grid{display:grid;grid-template-columns:1.65fr 1fr;grid-template-rows:232px 232px;gap:.875rem}.pillar-card{position:relative;border-radius:var(--r-lg);overflow:clip;cursor:pointer;isolation:isolate}.pillar-card:first-child{grid-row:1 / 3}.pillar-card-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .65s var(--ease-smooth);animation:pillar-ken-burns 9s var(--ease-editorial) forwards}.pillar-card:hover .pillar-card-bg{transform:scale(1.04)}.pillar-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,14,26,.93) 0%,rgba(8,14,26,.32) 48%,transparent 72%),linear-gradient(100deg,rgba(8,14,26,.2) 0%,transparent 50%);display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;gap:.38rem}.pillar-card:first-child .pillar-card-overlay{padding:2rem}.pillar-num{font-family:var(--font-display);font-size:.7rem;font-style:italic;color:var(--gold);letter-spacing:.04em;line-height:1}.pillar-badge{display:inline-block;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#ffffffe0;background:#ffffff1a;border:1px solid rgba(255,255,255,.24);border-radius:99px;padding:.18rem .6rem;width:fit-content;backdrop-filter:blur(6px)}.pillar-card-overlay h3{font-family:var(--font-display);font-weight:600;color:#fff;margin:0;line-height:1.15;text-shadow:0 2px 16px rgba(0,0,0,.45)}.pillar-card:first-child .pillar-card-overlay h3{font-size:1.85rem}.pillar-card:not(:first-child) .pillar-card-overlay h3{font-size:1.15rem}.pillar-card-desc{font-size:.77rem;color:#ffffffc2;margin:0;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pillar-card:not(:first-child) .pillar-card-desc{display:none}.pillar-meta{display:flex;align-items:center;font-size:.68rem;color:#ffffff85;margin:.1rem 0 .05rem}.pillar-meta span+span:before{content:"\b7";margin:0 .4rem;color:var(--gold);opacity:.7}.pillar-cta-row{display:flex;align-items:center;gap:.6rem;margin-top:.25rem}.pillar-cta-rule{width:1.5rem;height:1px;background:var(--gold);flex-shrink:0;opacity:.75}.pillar-cta{font-family:var(--font);font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#ffffffd1;background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;gap:.35rem;transition:color .25s}.pillar-cta:hover{color:var(--gold)}.pillar-cta-arrow{display:inline-block;transition:transform .3s var(--ease-spring)}.pillar-card:hover .pillar-cta-arrow{transform:translate(5px)}.pillar-grid[data-count="4"]{grid-template-rows:175px 175px 175px}.pillar-grid[data-count="2"]{grid-template-columns:1fr 1fr;grid-template-rows:464px}.pillar-grid[data-count="2"] .pillar-card:first-child{grid-row:auto}.pillar-grid[data-count="1"]{grid-template-columns:1fr;grid-template-rows:400px}.pillar-grid[data-count="1"] .pillar-card:first-child{grid-row:auto}@media(max-width:860px){.pillar-grid,.pillar-grid[data-count="4"],.pillar-grid[data-count="2"],.pillar-grid[data-count="1"]{grid-template-columns:1fr;grid-template-rows:none;gap:.625rem}.pillar-card{height:220px}.pillar-card:first-child{grid-row:auto;grid-column:auto;height:280px}.pillar-card:not(:first-child) .pillar-card-overlay{padding:1.25rem}.pillar-card:not(:first-child) .pillar-card-desc{display:block}}@media(max-width:560px){.pillar-grid{grid-template-columns:1fr;grid-template-rows:auto}.pillar-card:first-child{grid-column:auto;height:260px}.pillar-card{height:240px}.pillar-grid[data-count="2"]{grid-template-rows:auto;grid-template-columns:1fr}}.calendar-view{max-width:860px;margin:0 auto;padding:2.5rem 2rem 4rem}.cal-filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.cal-filter-pill{padding:.35rem .9rem;border-radius:99px;border:1px solid var(--border);background:var(--bg);font-size:.78rem;cursor:pointer;transition:all .15s;color:var(--text-2);font-weight:500;font-family:var(--font-ui)}.cal-filter-pill.active,.cal-filter-pill:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.cal-month{margin-bottom:2.5rem}.cal-month-header{display:flex;align-items:center;gap:.6rem;padding-bottom:.5rem;border-bottom:2px solid var(--border);margin-bottom:.875rem}.cal-month-accent{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.cal-month-name{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--text)}.cal-month-count{font-size:.75rem;color:var(--text-3);margin-left:auto}.cal-dep-list{display:flex;flex-direction:column;gap:.5rem}.cal-dep-card{display:flex;align-items:center;gap:.875rem;padding:.75rem .875rem;border:1px solid var(--border);border-radius:var(--r);background:var(--bg);cursor:pointer;transition:border-color .15s,box-shadow .15s}.cal-dep-card:hover{border-color:var(--navy);box-shadow:0 2px 8px #00000012}.cal-dep-thumb{width:64px;height:50px;border-radius:6px;background-size:cover;background-position:center;flex-shrink:0}.cal-dep-info{flex:1;min-width:0}.cal-dep-title{font-weight:600;font-size:.85rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-dep-sub{font-size:.73rem;color:var(--text-3);margin-top:.12rem}.cal-dep-series{display:inline-block;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--navy);background:var(--gold-light);border:1px solid var(--gold-border);border-radius:4px;padding:.1rem .35rem;margin-top:.25rem}.cal-dep-price{text-align:right;flex-shrink:0}.cal-dep-price-val{font-weight:700;font-size:.9rem;color:var(--text)}.cal-dep-price-sub{font-size:.65rem;color:var(--text-3)}.cal-dep-status{flex-shrink:0;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.22rem .5rem;border-radius:4px;min-width:60px;text-align:center}.cal-dep-status.avail{background:#d1fae5;color:#065f46}.cal-dep-status.soldout{background:#fee2e2;color:#991b1b}.cal-dep-actions{flex-shrink:0}@media(max-width:600px){.cal-dep-card{flex-wrap:wrap;gap:.5rem;padding:.625rem}.cal-dep-thumb{width:48px;height:40px}.cal-dep-price{display:none}.cal-dep-status{font-size:.6rem;padding:2px 6px}.cal-dep-actions{margin-left:auto}}.wiz-container{max-width:800px;margin:0 auto;padding:1.5rem 2rem 6rem}.wiz-back-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:500;color:var(--text-3);text-decoration:none;cursor:pointer;margin-bottom:1rem;transition:color .15s}.wiz-back-link:hover{color:var(--text)}.wiz-back-link svg{width:16px;height:16px}.wiz-progress{display:flex;align-items:center;max-width:560px;margin:0 auto 2.5rem;user-select:none}.wiz-progress-step{display:flex;flex-direction:column;align-items:center;gap:.4rem;z-index:1;cursor:default;flex-shrink:0}.wiz-progress-step.clickable{cursor:pointer}.wiz-progress-dot{width:40px;height:40px;border-radius:50%;border:2px solid var(--border-hover);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;color:var(--text-3);background:var(--bg);transition:all var(--ease)}.wiz-progress-step.completed .wiz-progress-dot{background:var(--gold);border-color:var(--gold);color:#fff}.wiz-progress-step.current .wiz-progress-dot{border-color:var(--gold);color:var(--gold);box-shadow:0 0 0 4px #b8956a1f}.wiz-progress-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);white-space:nowrap}.wiz-progress-step.current .wiz-progress-label{color:var(--gold)}.wiz-progress-step.completed .wiz-progress-label{color:var(--text-2)}.wiz-progress-line{flex:1;height:2px;background:var(--border);min-width:20px;transition:background var(--ease)}.wiz-progress-line.filled{background:var(--gold)}.wiz-step-title{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,1.8rem);font-weight:600;color:var(--navy);margin-bottom:.35rem;letter-spacing:-.01em}.wiz-step-subtitle{font-size:.88rem;color:var(--text-2);margin-bottom:2rem;line-height:1.5}.wiz-section{margin-bottom:2rem}.wiz-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:.75rem}.wiz-body{animation:wizFadeIn .3s ease}@keyframes wizFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.wiz-footer{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;margin-top:2rem;border-top:1px solid var(--border)}.wiz-footer-spacer{flex:1}.wiz-tour-card{display:flex;gap:1.25rem;padding:1.25rem;border:1px solid var(--border);border-radius:var(--r-lg);margin-bottom:1rem;transition:border-color .15s}.wiz-tour-image{width:100px;height:75px;border-radius:var(--r);background-size:cover;background-position:center;flex-shrink:0}.wiz-tour-info{flex:1;min-width:0}.wiz-tour-title{font-weight:600;font-size:.95rem;margin-bottom:.2rem}.wiz-tour-meta{font-size:.78rem;color:var(--text-2)}.wiz-pricing{margin-top:1.5rem}.wiz-price-row{display:flex;justify-content:space-between;align-items:baseline;padding:.45rem 0;font-size:.88rem;color:var(--text-2)}.wiz-price-row span:last-child{font-weight:600;font-family:var(--mono);color:var(--text)}.wiz-price-total{display:flex;justify-content:space-between;align-items:baseline;padding:.75rem 0 0;margin-top:.5rem;border-top:2px solid var(--border);font-weight:700;font-size:1.1rem;color:var(--text)}.wiz-price-total span:last-child{font-family:var(--mono)}.wiz-discount-badge{display:inline-block;font-size:.72rem;font-weight:600;color:var(--green);background:#0d7d6a14;padding:.15rem .55rem;border-radius:100px}.wiz-stepper-row{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid var(--border)}.wiz-stepper-label{font-size:.88rem;font-weight:500}.wiz-stepper-label small{display:block;font-size:.75rem;font-weight:400;color:var(--text-3)}.wiz-guest-card{border:1px solid var(--border);border-radius:var(--r-lg);padding:1.25rem 1.5rem;margin-bottom:1rem;background:var(--bg);transition:border-color .2s ease}.wiz-guest-card:focus-within{border-color:var(--gold-border)}.wiz-guest-header{font-weight:600;font-size:.88rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.wiz-guest-badge{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gold);background:var(--gold-light);padding:.2rem .55rem;border-radius:100px}.wiz-guest-grid{display:grid;grid-template-columns:105px 1fr 1fr auto;gap:.85rem .65rem;align-items:start}.wiz-guest-grid .form-group{display:flex;flex-direction:column}.wiz-guest-grid .form-group .form-label{flex-shrink:0}.wiz-guest-grid .form-group .form-input,.wiz-guest-grid .form-group .dob-selects{min-height:var(--input-h, 52px)}.dob-selects{display:flex;gap:.4rem;align-items:stretch}.dob-selects select{min-height:var(--input-h, 52px);font-size:.88rem;font-family:var(--font);padding:.5rem 1.8rem .5rem .65rem;border:1px solid var(--border);border-radius:var(--r);background-color:var(--bg);color:var(--text);-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237A756E' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;transition:border-color .15s ease,box-shadow .15s ease;cursor:pointer}.dob-selects select:hover{border-color:var(--border-hover)}.dob-selects select:focus{outline:none;border-color:var(--gold);box-shadow:var(--focus-ring)}.dob-selects select:invalid,.dob-selects select option[value=""]{color:var(--text-3)}.dob-selects .dob-month{min-width:82px;flex:1.3}.dob-selects .dob-day{min-width:56px;flex:.65}.dob-selects .dob-year{min-width:76px;flex:1}.wiz-guest-grid select.form-input{padding-right:calc(var(--input-pad-x) + 18px);background-position:right 8px center}.wiz-guest-grid .form-group>.cs-wrap,.wiz-guest-grid .form-group>.cs-wrap .cs-trigger{min-height:var(--input-h)}.wiz-passport-upload{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed var(--border)}.wiz-passport-label{font-size:.8rem;font-weight:600;color:var(--text-2);display:flex;align-items:center;gap:.35rem;margin-bottom:.5rem}.wiz-passport-icon{font-size:1rem}.wiz-optional{font-weight:400;color:var(--text-3);font-size:.72rem}.wiz-passport-drop{border:2px dashed var(--border);border-radius:var(--r-md);padding:1rem;text-align:center;transition:all var(--ease);min-height:60px;display:flex;align-items:center;justify-content:center}.wiz-passport-drop.wiz-passport-dragover{border-color:var(--navy);background:#003c6b0a}.wiz-passport-prompt{font-size:.78rem;color:var(--text-3);margin:0}.wiz-passport-browse{color:var(--navy);cursor:pointer;text-decoration:underline;font-weight:500}.wiz-passport-hint{font-size:.68rem;color:var(--text-3);margin:.25rem 0 0}.wiz-passport-preview{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:.35rem}.wiz-passport-preview img{max-height:120px;max-width:100%;border-radius:var(--r-sm);object-fit:contain;border:1px solid var(--border)}.wiz-passport-pdf-icon{font-size:2.5rem;line-height:1}.wiz-passport-remove{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;background:var(--text-1);color:#fff;border:0;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.wiz-passport-filename{font-size:.68rem;color:var(--text-3);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wiz-room-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.wiz-room-card{border:1.5px solid var(--border);border-radius:var(--r-lg);padding:1.25rem 1rem;cursor:pointer;transition:all .2s ease;position:relative;text-align:center;background:var(--bg)}.wiz-room-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow);transform:translateY(-1px)}.wiz-room-card.selected{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold-border);background:var(--gold-light)}.wiz-room-card.selected:after{content:"\2713";position:absolute;top:10px;right:12px;width:22px;height:22px;border-radius:50%;background:var(--gold);color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center}.wiz-room-card-title{font-weight:600;font-size:.9rem;margin-bottom:.25rem}.wiz-room-card-detail{font-size:.8rem;color:var(--text-2);margin-bottom:.4rem}.wiz-room-card-price{font-weight:700;font-size:.88rem;color:var(--navy)}.wiz-badge{position:absolute;top:-9px;left:50%;transform:translate(-50%);background:var(--gold);color:#fff;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:.2rem .65rem;border-radius:100px;white-space:nowrap}.wiz-radio-group{display:flex;gap:1rem;margin-bottom:1.5rem}.wiz-radio-card{flex:1;border:1px solid var(--border);border-radius:var(--r-lg);padding:1rem;cursor:pointer;text-align:center;transition:all var(--ease);font-size:.88rem;font-weight:500;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.4rem}.wiz-radio-card:hover{border-color:var(--border-hover)}.wiz-radio-card.selected{border-color:var(--navy);background:var(--navy-light);color:var(--navy);font-weight:600}.wiz-radio-icon{font-size:1.1rem}.wiz-flight-panel{overflow:hidden;max-height:0;opacity:0;transition:max-height .4s cubic-bezier(.22,1,.36,1),opacity .3s ease}.wiz-flight-panel.open{max-height:600px;opacity:1;overflow:visible}.wiz-flight-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding-top:.5rem}.wiz-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.wiz-form-full{grid-column:1 / -1}.wiz-agency-toggle{display:flex;align-items:center;gap:.75rem;padding:1rem;margin:1rem 0;border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;transition:background .15s}.wiz-agency-toggle:hover{background:var(--bg-warm)}.wiz-agency-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--navy);cursor:pointer}.wiz-agency-label{font-size:.88rem;font-weight:500}.wiz-agency-label small{display:block;font-size:.75rem;color:var(--text-3);font-weight:400}.wiz-agency-fields{overflow:hidden;max-height:0;opacity:0;transition:max-height .3s ease,opacity .2s ease}.wiz-agency-fields.open{max-height:800px;opacity:1}.wiz-copy-lead-btn{background:none;border:1px solid var(--gold-border);border-radius:100px;font-size:.72rem;font-weight:600;color:var(--gold-dim);padding:.3rem .85rem;cursor:pointer;transition:all .2s ease;letter-spacing:.02em}.wiz-copy-lead-btn:hover{background:var(--gold);color:#fff;border-color:var(--gold)}.wiz-review-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-bottom:1rem;table-layout:auto;overflow-wrap:break-word}.wiz-review-table th{text-align:left;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);padding:.55rem .75rem .55rem 0;border-bottom:2px solid var(--border-hover);white-space:nowrap}.wiz-review-table td{padding:.7rem .75rem .7rem 0;border-bottom:1px solid var(--border);color:var(--text);vertical-align:top}.wiz-review-table tr:last-child td{border-bottom:none}.wiz-review-table tr:hover td{background:var(--navy-light)}.wiz-tc-gate{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin-bottom:1rem}.wiz-tc-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-1);border-bottom:1px solid var(--border);font-size:.82rem;font-weight:600;color:var(--text-1)}.wiz-tc-progress{font-size:.72rem;font-weight:400;color:var(--text-3)}.wiz-tc-scroll{max-height:400px;overflow-y:auto;padding:1.25rem 1.5rem;font-size:.82rem;line-height:1.7;color:var(--text-2);scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.wiz-tc-scroll h2{font-size:1rem;color:var(--navy, #1a365d);margin:1.5rem 0 .5rem;padding-top:.75rem;border-top:1px solid var(--border)}.wiz-tc-scroll h2:first-child{margin-top:0;padding-top:0;border-top:none}.wiz-tc-scroll h3{font-size:.9rem;color:var(--text-1);margin:1rem 0 .35rem}.wiz-tc-scroll h4{font-size:.82rem;font-weight:600;color:var(--text-1);margin:.75rem 0 .25rem}.wiz-tc-scroll p{margin:.35rem 0 .5rem}.wiz-tc-scroll ul{margin:.25rem 0 .5rem 1.25rem;padding:0}.wiz-tc-scroll li{margin-bottom:.2rem}.wiz-tc-scroll table{width:100%;border-collapse:collapse;margin:.5rem 0 .75rem;font-size:.78rem}.wiz-tc-scroll th,.wiz-tc-scroll td{padding:.4rem .6rem;text-align:left;border-bottom:1px solid var(--border)}.wiz-tc-scroll th{background:var(--bg-1);font-weight:600;color:var(--text-1)}.wiz-tc-bottom{position:relative}.wiz-tc-fade{position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(transparent,var(--bg-0, #fff));pointer-events:none;transition:opacity .3s}.wiz-tc-fade.hidden{opacity:0}.wiz-tc-agree{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--border);background:var(--bg-1);font-size:.82rem}.wiz-tc-agree input[type=checkbox]{width:18px;height:18px;accent-color:var(--navy, #003C6B)}.wiz-tc-agree label{cursor:pointer;user-select:none}.wiz-tc-agree.disabled{opacity:.5;pointer-events:none}.wiz-tc-scroll-hint{text-align:center;padding:.5rem;font-size:.72rem;color:var(--text-3);transition:opacity .3s}.wiz-tc-scroll-hint.hidden{opacity:0}.wiz-sig-locked{opacity:.4;pointer-events:none;filter:grayscale(.5);transition:opacity .3s,filter .3s}.wiz-sig-locked .wiz-seal-section,.wiz-sig-locked .wiz-sign-section{pointer-events:none}@media(max-width:768px){.wiz-tc-scroll{max-height:320px;padding:1rem}}.wiz-check-row{display:flex;align-items:flex-start;gap:.65rem;padding:.75rem 0;font-size:.88rem}.wiz-check-row input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--navy);cursor:pointer;flex-shrink:0}.wiz-check-row a{color:var(--navy);text-decoration:underline}.wiz-payment-methods{display:flex;flex-direction:column;gap:.5rem}.wiz-payment-option{display:flex;align-items:center;gap:.85rem;padding:.9rem 1.1rem;border:1.5px solid var(--border);border-radius:var(--r-lg);cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;position:relative}.wiz-payment-option:hover{border-color:var(--border-hover);box-shadow:var(--shadow)}.wiz-payment-option.selected{border-color:var(--navy);background:var(--navy-light);box-shadow:inset 3px 0 0 var(--navy)}.wiz-payment-option input[type=radio]{accent-color:var(--navy);width:18px;height:18px;flex-shrink:0}.wiz-payment-info{display:flex;flex-direction:column;gap:.2rem}.wiz-payment-label{font-size:.9rem;font-weight:600;color:var(--text)}.wiz-payment-desc{font-size:.78rem;color:var(--text-3);line-height:1.4}.wiz-sig-container{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin-top:1rem}.wiz-seal-section{padding:1.25rem 1.25rem 1rem;background:linear-gradient(160deg,var(--bg-warm) 0%,#f3efe7 100%)}.wiz-seal-header{margin-bottom:1rem}.wiz-seal-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.wiz-seal-jp{font-size:.72rem;color:var(--gold-dim);margin-left:.4rem;font-weight:400;letter-spacing:0}.wiz-seal-body{display:flex;align-items:center;gap:1.25rem}.wiz-seal-preview{flex-shrink:0}.wiz-seal-preview svg{width:88px;height:88px;transition:opacity .2s}.wiz-seal-chips{display:flex;flex-wrap:wrap;gap:.3rem}.wiz-seal-chip{display:flex;flex-direction:column;align-items:flex-start;padding:.35rem .6rem;font-size:.78rem;font-weight:500;cursor:pointer;border-radius:var(--r);border:1px solid var(--border);background:#fff;transition:all .15s;font-family:var(--font);color:var(--text-2);line-height:1.35}.wiz-seal-chip .chip-sub{font-size:.6rem;color:var(--text-3);font-weight:400}.wiz-seal-chip:hover{border-color:var(--gold-border)}.wiz-seal-chip.active{border-color:var(--navy);background:#0c23400d;color:var(--navy)}.wiz-seal-chip.active .chip-sub{color:var(--navy);opacity:.6}.wiz-seal-note{font-size:.68rem;color:var(--text-3);margin-top:.85rem;padding-top:.6rem;border-top:1px solid rgba(0,0,0,.04)}.wiz-sign-section{padding:1.25rem;border-top:1px solid var(--border)}.wiz-sign-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.wiz-sign-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.wiz-sign-toggle{display:flex;background:var(--bg-muted);border-radius:99px;padding:2px}.wiz-sign-pill{padding:.28rem .75rem;font-size:.7rem;font-weight:500;border-radius:99px;border:none;background:none;cursor:pointer;color:var(--text-3);transition:all .15s;font-family:var(--font)}.wiz-sign-pill.active{background:#fff;color:var(--navy);box-shadow:0 1px 2px #00000014}.wiz-sig-draw,.wiz-sig-type{padding:0}.wiz-sig-type{display:none}.wiz-sig-canvas{display:block;width:100%;height:150px;cursor:crosshair;touch-action:none;background:#fff}.wiz-sig-typed-input{border:none;border-bottom:1px solid var(--border);background:transparent;font-family:var(--font-display);font-style:italic;font-size:1.8rem;text-align:center;width:100%;color:var(--navy);padding:1rem 0;outline:none}.wiz-sig-typed-input:focus{border-bottom-color:var(--gold)}.wiz-sig-typed-input::placeholder{color:var(--input-placeholder);font-size:1.2rem}.wiz-sig-actions{display:flex;justify-content:flex-end;padding:.4rem .75rem;border-top:1px solid var(--border);background:var(--bg-warm)}.wiz-sig-clear{font-size:.75rem;color:var(--text-3);background:none;border:none;text-decoration:underline;cursor:pointer;padding:.3rem .5rem;font-family:var(--font)}.wiz-sig-clear:hover{color:var(--text)}.wiz-verify-gate{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-warm);transition:border-color .15s}.wiz-thank-you{text-align:center;padding:3rem 2rem;max-width:560px;margin:0 auto}.wiz-thank-icon{width:64px;height:64px;border-radius:50%;background:#0d7d6a1a;color:var(--green);display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 1.5rem}.wiz-thank-you h2{font-family:var(--font-display);font-size:1.6rem;font-weight:600;color:var(--navy);margin-bottom:.5rem}.wiz-thank-you .wiz-thank-ref{font-size:.78rem;color:var(--text-3);margin-bottom:1.5rem}.wiz-thank-steps{text-align:left;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.5rem;margin:1.5rem 0}.wiz-thank-steps h3{font-size:.9rem;font-weight:600;margin-bottom:.75rem}.wiz-thank-steps ol{padding-left:1.25rem;font-size:.85rem;color:var(--text-2);line-height:1.8}@media(max-width:768px){.wiz-container{padding:1rem 1rem 5rem}.wiz-progress-label{display:none}.wiz-progress-dot{width:34px;height:34px;font-size:.8rem}.wiz-guest-grid{grid-template-columns:1fr 1fr}.dob-selects{flex-wrap:nowrap;gap:.3rem}.dob-selects select{min-height:44px;font-size:.82rem;padding:.4rem 1.5rem .4rem .45rem}.dob-selects .dob-month{min-width:72px}.dob-selects .dob-day{min-width:50px}.dob-selects .dob-year{min-width:68px}.wiz-flight-grid,.wiz-form-grid{grid-template-columns:1fr}.wiz-tour-card{flex-direction:column;gap:.75rem}.wiz-tour-image{width:100%;height:140px}.wiz-payment-methods{gap:.4rem}.wiz-payment-option{padding:.7rem .85rem}.wiz-footer{position:sticky;bottom:0;z-index:10;background:var(--bg);padding:1rem;box-shadow:0 -4px 12px #0000000d;margin-top:1rem;border-top:1px solid var(--border)}}@media(max-width:480px){.wiz-progress-dot{width:28px;height:28px;font-size:.72rem}.wiz-progress-line{min-width:12px}.wiz-room-options,.wiz-guest-grid{grid-template-columns:1fr}.dob-selects select{min-height:40px;font-size:.8rem}.wiz-radio-group{flex-direction:column}.wiz-stepper-row{flex-direction:column;align-items:flex-start;gap:.5rem}.wiz-payment-option{flex-wrap:wrap}}.quote-estimate-card{max-width:420px;margin:0 auto 1.5rem;background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.5rem;text-align:left}.quote-estimate-card .estimate-heading{font-family:var(--font-display, Georgia, serif);font-size:.9rem;font-weight:600;text-align:center;margin-bottom:.75rem;color:var(--navy)}.quote-estimate-card .estimate-detail{font-size:.82rem;color:var(--text-2);text-align:center;margin-bottom:.75rem;line-height:1.6}.quote-estimate-card .estimate-line{display:flex;justify-content:space-between;font-size:.85rem;padding:.3rem 0}.quote-estimate-card .estimate-line.discount{color:var(--green)}.quote-estimate-card .estimate-total{display:flex;justify-content:space-between;font-weight:700;font-size:1.05rem;border-top:1px solid var(--border);padding-top:.75rem;margin-top:.5rem}.quote-estimate-card .estimate-tax{font-size:.75rem;color:var(--text-3);text-align:center;margin-top:.25rem}.wiz-airport-dropdown{position:absolute;left:0;right:0;top:100%;background:var(--bg-card, #fff);border:1px solid var(--border);border-radius:0 0 var(--r-lg, 8px) var(--r-lg, 8px);max-height:260px;overflow-y:auto;z-index:50;box-shadow:0 4px 16px #00000014}.wiz-airport-item{padding:.6rem .75rem;cursor:pointer;font-size:.85rem;display:flex;justify-content:space-between;align-items:center}.wiz-airport-item:hover,.wiz-airport-item.active{background:color-mix(in srgb,var(--navy) 6%,transparent)}.wiz-airport-code{font-family:var(--mono, monospace);font-weight:600;color:var(--navy);font-size:.82rem;min-width:36px}.wiz-airport-city{color:var(--text-2)}.wiz-airport-country{font-size:.72rem;color:var(--text-3);margin-left:.5rem}.verify-page{max-width:640px;margin:2.5rem auto;padding:0 1.25rem}.verify-card{background:#fff;border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.verify-header{background:var(--jdt-red);color:#fff;padding:1.5rem 1.75rem}.verify-header h1{font-size:1.1rem;font-weight:600;letter-spacing:.04em;margin:0}.verify-header .verify-subtitle{font-size:.8rem;opacity:.92;margin:.25rem 0 0}.verify-body{padding:1.75rem}.verify-row{display:flex;justify-content:space-between;align-items:center;padding:.625rem 0;border-bottom:1px solid var(--border)}.verify-row:last-of-type{border-bottom:none}.verify-label{font-size:.8rem;color:var(--text-3)}.verify-value{font-size:.8rem;font-weight:500;color:var(--text)}.verify-badge{display:inline-block;padding:.125rem .625rem;border-radius:99px;font-size:.75rem;font-weight:600}.verify-badge--confirmed{background:#16a34a1f;color:#16a34a}.verify-badge--pending{background:#ca8a041f;color:#ca8a04}.verify-hash{font-family:var(--mono);font-size:.69rem;color:var(--text-2);background:var(--bg-muted);padding:.75rem;border-radius:var(--r);margin-top:1rem;word-break:break-all;line-height:1.8}.verify-hash strong{display:block;font-family:var(--font);font-weight:600;margin-bottom:.25rem}.verify-documents{margin-top:1.25rem;padding:1.25rem;background:var(--bg-warm);border-radius:var(--r-lg);border:1px solid var(--border)}.verify-documents h3{font-size:.875rem;font-weight:600;color:var(--text-2);margin:0 0 .75rem}.verify-actions{display:flex;gap:.5rem;flex-wrap:wrap}.verify-actions .btn{padding:.5rem 1rem;border-radius:var(--r);font-size:.8rem;font-weight:500;letter-spacing:.01em}.verify-ots-note{font-size:.75rem;margin:.5rem 0 0}.verify-ots-note--confirmed{color:#16a34a}.verify-ots-note--pending{color:#ca8a04}.verify-footer{text-align:center;padding:1.25rem;font-size:.69rem;color:var(--text-3)}@media(max-width:480px){.verify-page{margin:1.5rem auto}.verify-header,.verify-body{padding:1.25rem}.verify-actions{flex-direction:column}.verify-actions .btn{width:100%;justify-content:center}}.hotels-page{max-width:1200px;margin:0 auto;padding:2rem}.hotels-header{text-align:center;margin-bottom:2rem}.hotels-header h1{font-family:Crimson Pro,Georgia,serif;font-size:2.2rem;font-weight:700;color:var(--navy, #0c2340);margin-bottom:.5rem}.hotels-header p{color:var(--text-2, #6b6b6b);font-size:.95rem}.hotels-filters{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.hotel-search-input{flex:1;min-width:200px;padding:.6rem 1rem;border:1px solid rgba(0,0,0,.12);border-radius:8px;font-size:.88rem;font-family:inherit;background:#fff}.hotel-search-input:focus{outline:none;border-color:var(--navy, #0c2340);box-shadow:0 0 0 2px #0c23401a}.hotels-filters select{padding:.6rem .75rem;border:1px solid rgba(0,0,0,.12);border-radius:8px;font-size:.85rem;font-family:inherit;background:#fff;min-width:140px}.hotels-count{font-size:.82rem;color:var(--text-2, #6b6b6b);margin-bottom:1rem}.hotels-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.hotel-card{display:block;border-radius:12px;overflow:hidden;border:1px solid rgba(0,0,0,.08);text-decoration:none;color:inherit;transition:box-shadow .2s,transform .2s;background:#fff}.hotel-card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-2px)}.hotel-card-img{height:200px;background-size:cover;background-position:center;position:relative}.hotel-type-badge{position:absolute;top:.75rem;left:.75rem;background:#0c2340d9;color:#fff;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.25rem .6rem;border-radius:4px}.hotel-card-body{padding:1rem 1.1rem}.hotel-card-body h3{font-size:.95rem;font-weight:600;margin-bottom:.35rem;line-height:1.3}.hotel-card-meta{display:flex;align-items:center;gap:.5rem;font-size:.78rem;color:var(--text-2, #6b6b6b);margin-bottom:.4rem;flex-wrap:wrap}.hotel-stars{color:#d4a853;letter-spacing:-1px}.hotel-card-excerpt{font-size:.82rem;color:var(--text-2, #6b6b6b);line-height:1.5}.hotel-detail{max-width:900px;margin:0 auto;padding:1.5rem 2rem 3rem}.hotel-back{display:inline-block;margin-bottom:1rem;font-size:.85rem;color:var(--navy, #0c2340);text-decoration:none}.hotel-back:hover{text-decoration:underline}.hotel-hero{height:400px;background-size:cover;background-position:center;border-radius:16px;overflow:hidden;position:relative;margin-bottom:1.5rem}.hotel-hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,#000000d9,#00000080 40%,#00000026 70%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem}.hotel-hero-overlay h1,.hotel-hero-overlay p,.hotel-hero-overlay span,.hotel-hero-overlay div{color:#fff}.hotel-hero-overlay h1{font-family:Crimson Pro,Georgia,serif;font-size:2rem;font-weight:700;margin-bottom:.25rem;text-shadow:0 2px 8px rgba(0,0,0,.5)}.hotel-hero-overlay .hotel-name-jp{color:#ffffffd9;font-size:.9rem;margin-bottom:.25rem;text-shadow:0 1px 4px rgba(0,0,0,.4)}.hotel-hero-overlay .hotel-loc-detail{color:#ffffffe6;font-size:.88rem;text-shadow:0 1px 4px rgba(0,0,0,.4)}.hotel-hero-overlay .hotel-stars-big{color:#fbbf24;font-size:1.1rem;margin-top:.5rem;letter-spacing:-1px;text-shadow:0 1px 4px rgba(0,0,0,.5)}.hotel-hero-overlay .hotel-type-badge{color:#fff}.hotel-gallery{display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto}.hotel-gallery-thumb{width:80px;height:60px;border-radius:8px;background-size:cover;background-position:center;cursor:pointer;flex-shrink:0;border:2px solid transparent;opacity:.7;transition:opacity .2s}.hotel-gallery-thumb.active,.hotel-gallery-thumb:hover{opacity:1;border-color:var(--navy, #0c2340)}.hotel-description{font-size:.92rem;line-height:1.7;color:var(--text-1, #1a140e);margin-bottom:1.5rem}.hotel-amenities{margin-bottom:1.5rem}.hotel-amenities h3{font-size:.9rem;font-weight:600;margin-bottom:.75rem}.amenity-tags{display:flex;flex-wrap:wrap;gap:.4rem}.amenity-tag{font-size:.75rem;padding:.3rem .7rem;background:#0c23400f;border-radius:100px;color:var(--text-1, #1a140e)}.hotel-info{margin-bottom:.75rem;font-size:.88rem;color:var(--text-2, #6b6b6b)}.hotel-info h3{font-size:.9rem;font-weight:600;margin-bottom:.4rem;color:var(--text-1, #1a140e)}.hotel-info a{color:var(--navy, #0c2340)}.hotel-cta{text-align:center;margin-top:2.5rem;padding:2rem;background:#0c234008;border-radius:12px}.hotel-cta p{margin-bottom:1rem;color:var(--text-2, #6b6b6b);font-size:.9rem}.hotel-cta .btn{margin:0 .4rem}@media(max-width:768px){.hotels-grid{grid-template-columns:1fr}.hotels-filters{flex-direction:column}.hotel-hero{height:280px;border-radius:12px}.hotel-hero-overlay h1{font-size:1.5rem}.hotel-detail{padding:1rem}}@keyframes petalDrift{0%{transform:translateY(0) rotate(0);opacity:.6}40%{transform:translateY(4px) rotate(12deg);opacity:.9}to{transform:translateY(14px) rotate(-8deg);opacity:0}}.tier-hazakura{position:relative}.tier-hazakura:after{content:"\1f343";position:absolute;top:-6px;right:-10px;font-size:.5rem;animation:petalDrift 2.8s ease-in-out infinite;pointer-events:none}.mega-links{display:none;list-style:none;align-items:center;gap:0;margin:0;padding:0}@media(min-width:960px){.mega-links{display:flex}.nav-inner{grid-template-columns:auto auto 1fr auto}}.mega-item{position:relative}.mega-trigger,.mega-link{display:flex;align-items:center;gap:.25rem;background:none;border:none;font-family:inherit;font-size:.82rem;font-weight:500;color:var(--text-2);padding:.5rem .7rem;cursor:pointer;white-space:nowrap;text-decoration:none;border-radius:var(--r);transition:color .15s,background .15s}.mega-trigger:hover,.mega-link:hover,.mega-item.mega-open .mega-trigger{color:var(--text);background:var(--navy-light)}.mega-chev{transition:transform .2s ease;margin-top:1px}.mega-item.mega-open .mega-chev{transform:rotate(180deg)}.mega-dropdown{display:none;position:absolute;top:100%;left:0;padding-top:6px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:1.25rem .25rem;z-index:200;min-width:320px;opacity:0;pointer-events:none;transition:opacity .15s ease}.mega-item.mega-open .mega-dropdown{display:grid;grid-template-columns:repeat(2,1fr);gap:0;opacity:1;pointer-events:auto}.mega-col{padding:0 1rem;min-width:150px}.mega-col+.mega-col{border-left:1px solid var(--border)}.mega-col-label{display:block;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--gold);padding:0 .6rem;margin-bottom:.5rem}.mega-col a{display:block;color:var(--text-2);text-decoration:none;font-size:.84rem;font-weight:500;padding:.4rem .6rem;border-radius:var(--r);transition:background .1s,color .1s}.mega-col a:hover{background:var(--navy-light);color:var(--navy)}.mega-link-muted{color:var(--text-3)!important;font-size:.78rem!important;font-weight:400!important;margin-top:.35rem}.mega-link-muted:hover{color:var(--navy)!important}@media(max-width:959px){.mega-links{display:none!important}.nav-inner{grid-template-columns:auto 1fr auto}}
/* tour-modal share button + highlights chips — restored 2026-06-10 (dropped twice by stale-src rebuilds; guarded by tests/regression/share-button.test.js) */
.modal-share-btn{position:absolute;top:.75rem;right:5.75rem;z-index:10;background:#0000007f;border:none;color:#fff;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--ease)}
.modal-share-btn:hover{background:#000000b3}
.modal-share-btn svg{width:16px;height:16px}
.tour-highlights{margin-bottom:1.5rem}
.highlights-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:.5rem}
.highlights-chips{display:flex;flex-wrap:wrap;gap:.35rem}
.highlight-chip{display:inline-flex;align-items:center;padding:.3rem .7rem;background:var(--gold-light);border:1px solid var(--gold-border);border-radius:100px;font-size:.72rem;font-weight:500;color:var(--gold-dim);white-space:nowrap}
@media(max-width:768px){.highlight-chip{font-size:.68rem;padding:.25rem .55rem}}
