:root{--paper:#f7f1e4;--paper-2:#fbf6ec;--card:#fffdf8;--ink:#241c12;--ink-soft:#5a4d3a;--ink-mute:#8a7958;--gold:#b8862f;--gold-deep:#8a5e1c;--gold-soft:#e6c97a;--line:#d8caac;--line-soft:#e6dcc4;--hero-dark:#15110a;--font-display:Fraunces, Georgia, serif;--font-display-ja:"Shippori Mincho", "Noto Serif JP", "Hiragino Mincho ProN", serif;--font-body:Newsreader, "Noto Serif JP", Georgia, serif;--font-body-ja:"Noto Serif JP", "Hiragino Mincho ProN", serif;--font-mono:"Fragment Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-sans:"Hiragino Kaku Gothic ProN", "Yu Gothic UI", system-ui, sans-serif}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);font-family:var(--font-body-ja);background:#f0eee9;margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{border:0}svg{display:block}.phoneShell{width:min(100%,390px);min-height:100vh;margin:0 auto;overflow:clip;box-shadow:0 20px 50px -20px #0000002e,0 0 0 1px #0000000f}.discoveryShell{background:var(--hero-dark);color:#e6dcc4}.detailShell{background:var(--paper);color:var(--ink);position:relative}.detailShell p,.detailShell span,.detailShell strong,.detailShell small,.detailShell h1,.detailShell h2,.detailShell h3,.detailShell div{line-break:strict;overflow-wrap:break-word;word-break:normal}.detailShell section,.detailShell article,.detailShell header,.detailShell .quoteLead,.detailShell .sectionIntro,.detailShell .pointCard,.detailShell .budgetCard,.detailShell .flightLegBlock,.detailShell .placeTier,.detailShell .restaurantGroup,.detailShell .detailCourseNotice{max-width:100%;overflow:hidden}.brandKicker{color:#e6c97af2;font-family:var(--font-display);letter-spacing:.32em;text-transform:uppercase;justify-content:center;align-items:center;gap:10px;font-weight:400;line-height:1;display:inline-flex}.brandKicker-sm{font-size:10px}.brandKicker-md{font-size:11px}.brandKicker-lg{font-size:13px}.brandKickerStacked{letter-spacing:.32em;flex-direction:column;gap:3px}.brandRule{opacity:.55;background:currentColor;width:18px;height:1px}.ornament{color:var(--gold-soft);justify-content:center;align-items:center;gap:8px;margin-left:auto;margin-right:auto;display:flex}.ornament span{opacity:.55;background:currentColor;flex:1;height:1px}.corner{z-index:2;border:1px solid #e6c97a8c;width:14px;height:14px;position:absolute}.cornerTl{border-bottom:0;border-right:0;top:8px;left:8px}.cornerTr{border-bottom:0;border-left:0;top:8px;right:8px}.cornerBl{border-top:0;border-right:0;bottom:8px;left:8px}.cornerBr{border-top:0;border-left:0;bottom:8px;right:8px}.photoSurface{background:linear-gradient(160deg,#2b1a0b 0%,#6a3d18 35%,#c97c2e 70%,#f4c478 100%);width:100%;height:100%;position:relative;overflow:hidden}.photoSurface:before{content:"";background:radial-gradient(circle at 22% 18%,#fffdf82e 0 8%,#0000 8.5%),radial-gradient(circle at 78% 24%,#e6c97a29 0 9%,#0000 9.5%),linear-gradient(135deg,#0000 0 42%,#fffdf81f 42.5% 45%,#0000 45.5%),linear-gradient(48deg,#0000 0 56%,#08050233 56.5% 59%,#0000 59.5%);position:absolute;inset:-20%;transform:rotate(-8deg)}.photoSurface>img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.photoSurface[data-tone="1"]{background:linear-gradient(160deg,#0a1a2e 0%,#1d4a72 40%,#5da4c7 75%,#f0e8d2 100%)}.photoSurface[data-tone="2"]{background:linear-gradient(160deg,#061a14 0%,#14463a 35%,#4ba287 70%,#c5e6d0 100%)}.photoSurface[data-tone="3"]{background:linear-gradient(160deg,#1a120a 0%,#4e2d12 35%,#b87432 70%,#f4cf8c 100%)}.photoSurface[data-tone="4"]{background:linear-gradient(160deg,#100806 0%,#36200f 35%,#8a5a26 70%,#d8a85a 100%)}.photoSurface[data-tone="5"]{background:linear-gradient(160deg,#0c1620 0%,#2a4a6b 40%,#6e93b5 75%,#d2dfe8 100%)}.photoSurface[data-tone="6"]{background:linear-gradient(160deg,#061319 0%,#103140 35%,#2a8a8c 70%,#94d6c0 100%)}.photoSurface[data-tone="7"]{background:linear-gradient(160deg,#0a1218 0%,#29404e 40%,#6a8696 75%,#d7e0e3 100%)}.photoSurface[data-tone="8"]{background:linear-gradient(160deg,#2a0f0a 0%,#6e2a1c 35%,#c8694a 70%,#f3c19a 100%)}.photoSurface[data-tone="9"]{background:linear-gradient(160deg,#1e0e08 0%,#5e2c1a 35%,#be7656 70%,#f1c3a2 100%)}.photoSurface[data-tone="10"]{background:linear-gradient(160deg,#1a0e06 0%,#4e2d14 35%,#b8843a 70%,#f3cf8c 100%)}.photoSurface[data-tone="11"]{background:linear-gradient(160deg,#0a1a0e 0%,#28442a 40%,#6a8c54 75%,#d8d690 100%)}.photoTint{background:linear-gradient(#0f0a032e 0%,#0f0a0300 22%,#0f0a031f 45%,#0f0a038c 78%,#080502e0 100%);position:absolute;inset:0}.topBar{z-index:5;color:var(--ink);justify-content:space-between;align-items:center;padding:20px 16px 14px;display:flex;position:relative}.topBarDark,.detailHeroMock .topBar{color:#f0e0b5;padding:20px 16px 12px}.topBarActions{justify-content:flex-end;gap:12px;min-width:32px;display:flex}.topBarSpacer{flex:1}.iconButton{width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0;display:inline-flex}.shareMenuRoot{position:relative}.shareMenuScrim{z-index:20;position:absolute;inset:-200px -16px -800px -800px}.shareMenu{z-index:21;border:1px solid var(--gold);background:var(--paper);width:252px;color:var(--ink);border-radius:2px;padding:18px 20px;position:absolute;top:46px;right:0;box-shadow:0 14px 36px -12px #3c280c59}.shareCorner{border:1px solid var(--gold);pointer-events:none;width:10px;height:10px;position:absolute}.shareCornerTl{border-bottom:0;border-right:0;top:6px;left:6px}.shareCornerTr{border-bottom:0;border-left:0;top:6px;right:6px}.shareCornerBl{border-top:0;border-right:0;bottom:6px;left:6px}.shareCornerBr{border-top:0;border-left:0;bottom:6px;right:6px}.shareMenuNotch{border-top:1px solid var(--gold);border-left:1px solid var(--gold);background:var(--paper);width:12px;height:12px;position:absolute;top:-7px;right:13px;transform:rotate(45deg)}.shareMenuHead{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.shareMenuHead span{font-family:var(--font-mono);letter-spacing:.28em;color:var(--gold-deep);text-transform:uppercase;font-size:12px;display:block}.shareMenuHead strong{font-family:var(--font-display-ja);color:var(--ink);letter-spacing:.04em;margin-top:4px;font-size:22.5px;font-weight:500;display:block}.shareMenuClose{color:var(--ink-mute);cursor:pointer;background:0 0;margin-top:2px;padding:4px;display:flex}.shareMenuRule{color:var(--gold);align-items:center;gap:6px;margin-bottom:16px;display:flex}.shareMenuRule span{opacity:.55;background:currentColor;flex:1;height:1px}.shareMenuList{display:block}.shareMenuItem{border-top:.5px solid var(--line-soft);width:100%;color:var(--ink);text-align:left;cursor:pointer;align-items:center;gap:14px;padding:10px 2px;font-family:inherit;display:flex}.shareMenuItem:first-child{border-top:0}.shareMenuItem span:nth-child(2){color:var(--ink);font-family:var(--font-display-ja);letter-spacing:.02em;flex:1;font-size:18.5px;font-weight:500}.shareMenuItem:hover span:nth-child(2){color:var(--gold-deep)}.shareMenuItemPrimary{background:0 0}.shareMenuIcon{border:1px solid var(--gold);background:var(--paper-2);width:32px;height:32px;color:var(--gold-deep);border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}.shareMenuArrow{color:var(--ink-mute);flex:none;display:flex}.detailHeroMock .iconButton{width:36px;height:36px}.filterBar{scrollbar-width:none;gap:8px;padding:6px 16px 12px;display:flex;overflow-x:auto}.filterBar::-webkit-scrollbar{display:none}.railScroller::-webkit-scrollbar{display:none}.relatedRail::-webkit-scrollbar{display:none}.restaurantTabs::-webkit-scrollbar{display:none}.masonryGrid::-webkit-scrollbar{display:none}.filterChip{color:#e6dcc4;font-family:var(--font-body-ja);letter-spacing:.04em;white-space:nowrap;background:#fffdf814;border:.5px solid #e6c97a59;border-radius:999px;flex:none;padding:6px 14px;font-size:16px;font-weight:500;text-decoration:none}.filterChipActive{color:#1a1108;background:#e6c97aeb;border-color:#e6c97aeb}.bottomNav{border-top:1px solid var(--line-soft);background:var(--paper-2);justify-content:space-around;align-items:stretch;width:100%;padding:7px 8px 12px;display:flex;box-shadow:0 -8px 22px -8px #140e042e}.bottomNavItem{color:var(--ink-soft);flex-direction:column;flex:1;align-items:center;gap:2px;padding-top:3px;display:flex;position:relative}.bottomNavItemActive{color:var(--gold-deep)}.bottomNavItemActive:before{background:var(--gold);content:"";border-radius:50%;width:4px;height:4px;position:absolute;top:-4px;left:50%;transform:translate(-50%)}.bottomNavIcon{justify-content:center;align-items:center;height:22px;display:flex}.bottomNavSub{color:currentColor;font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;margin-top:3px;font-size:12px;font-style:italic;font-weight:400;line-height:1.2}.bottomNavItemActive .bottomNavSub{font-weight:600}.featuredWrap{padding:0 16px}.featuredWrap .coursePoster{border-radius:18px;box-shadow:0 4px 18px #00000040,inset 0 0 0 .5px #e6c97a73}.coursePosterFeatured .corner{width:18px;height:18px}.coursePosterFeatured .cornerTl{top:12px;left:12px}.coursePosterFeatured .cornerTr{top:12px;right:12px}.coursePosterFeatured .cornerBl{bottom:12px;left:12px}.coursePosterFeatured .cornerBr{bottom:12px;right:12px}.coursePosterFeatured .coursePosterBrand{top:30px}.coursePosterFeatured .coursePosterCatch{left:18px;right:18px}.coursePosterFeatured .coursePosterCatch span{font-size:22.5px}.coursePosterFeatured .coursePosterCatch strong{text-shadow:0 2px 14px #0000008c;margin-top:4px;font-size:40px;line-height:1.15}.coursePosterFeatured .coursePosterPlace{bottom:24px;left:18px;right:18px}.featuredPosterPlace{z-index:2;text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:24px;left:18px;right:18px}.featuredPosterPlace .ornament{margin-bottom:12px}.featuredPosterPlace strong{color:#fff;font-family:var(--font-display-ja);text-shadow:0 1px 10px #00000080;font-size:27.5px;font-weight:500;line-height:1.25}.featuredPosterPlace span{color:var(--gold-soft);font-family:var(--font-display);letter-spacing:.28em;text-transform:uppercase;margin-top:3px;font-size:15.5px;font-style:italic}.discoveryTitle{text-align:center;padding:4px 24px 22px}.discoveryTitle h1{color:#f3e6c2;font-family:var(--font-display-ja);letter-spacing:.01em;margin:14px 0 0;font-size:30px;font-weight:500;line-height:1.3}.discoveryTitle p{color:#b89a6a;font-family:var(--font-display);letter-spacing:.32em;text-transform:uppercase;margin:12px 0 0;font-size:17px;font-style:italic;font-weight:400;line-height:1.45}.regionSection{padding:0 16px 8px}.regionSection h2,.homeMasonryTitle p,.railHead p{color:#b89a6a;font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;margin:0;font-size:13px;font-weight:400;line-height:1.45}.regionSection h2{margin-bottom:10px}.regionGrid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.regionTile{border:.5px solid #e6c97a59;border-radius:10px;height:130px;display:block;position:relative;overflow:hidden}.regionTile .photoTint{background:linear-gradient(#0f0a0347 0%,#0f0a033d 38%,#080502c7 100%)}.regionTile>.photoSurface>div:last-child{z-index:2;flex-direction:column;justify-content:flex-end;padding:14px;display:flex;position:absolute;inset:0}.regionTile small{color:var(--gold-soft);font-family:var(--font-display);letter-spacing:.22em;text-shadow:0 1px 2px #080502eb,0 4px 14px #080502cc;text-transform:uppercase;font-size:14px;font-style:italic;line-height:1.35}.regionTile strong{color:#fff;font-family:var(--font-display-ja);text-shadow:0 1px 8px #00000080;margin-top:2px;font-size:22.5px;font-weight:500;line-height:1.25}.regionTile span{color:#f0e0b5;font-family:var(--font-mono);letter-spacing:.14em;margin-top:4px;font-size:11px;line-height:1.35}.regionTileActive{border-color:var(--gold-soft);box-shadow:0 0 0 1.5px var(--gold-soft)}.regionFilterReset{color:var(--gold-soft);font-family:var(--font-mono);letter-spacing:.12em;align-self:flex-start;margin-top:6px;font-size:10px}.courseRail{padding:24px 0 4px}.courseRail+.courseRail{padding-top:20px}.railHead{justify-content:space-between;align-items:baseline;gap:16px;padding:0 24px;display:flex}.railHead h2,.homeMasonryTitle h2{color:#f3e6c2;font-family:var(--font-display-ja);margin:4px 0 0;font-size:22.5px;font-weight:500;line-height:1.35}.railHead a{color:var(--gold-soft);font-family:var(--font-display);flex:none;font-size:15.5px;font-style:italic;line-height:1.4}.railScroller{scrollbar-width:none;gap:12px;padding:14px 16px 4px;display:flex;overflow-x:auto}.railCard{flex:none;width:220px}.homeMasonryHead{padding:24px 0 0}.homeMasonryTitle{padding:0 24px}.masonryGrid{gap:10px;padding:4px 12px 24px;display:flex}.masonryGrid>div{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.masonryGrid>div:nth-child(2){padding-top:32px}.coursePoster{border-radius:14px;width:100%;display:block;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000002e,inset 0 0 0 .5px #e6c97a66}.coursePosterGenerated{background:#120f0a}.coursePosterGenerated img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.coursePosterBrand{z-index:2;justify-content:center;display:flex;position:absolute;top:22px;left:0;right:0}.coursePosterBrand .brandKickerStacked{font-size:8.5px}.coursePosterBody{z-index:2;flex-direction:column;display:flex;position:absolute;inset:46px 12px 14px;overflow:hidden}.coursePosterBody .coursePosterCatch{flex-direction:column;flex:1;justify-content:center;display:flex;position:static;transform:none}.coursePosterBody .coursePosterPlace{position:static}.coursePosterCatch{z-index:2;text-align:center;position:absolute;top:38%;left:12px;right:12px;transform:translateY(-50%)}.coursePosterCatch span,.coursePosterCatch strong{color:#fff;font-family:var(--font-display-ja);overflow-wrap:break-word;text-shadow:0 1px 10px #0000008c;-webkit-box-orient:vertical;font-weight:500;display:-webkit-box;overflow:hidden}.coursePosterCatch span{letter-spacing:.02em;-webkit-line-clamp:2;font-size:19.5px;line-height:1.4}.coursePosterCatch strong{letter-spacing:.01em;-webkit-line-clamp:3;margin-top:2px;font-size:27.5px;line-height:1.25}.coursePosterPlace{z-index:2;text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:14px;left:12px;right:12px}.placeEn{color:var(--gold-soft);font-family:var(--font-display);letter-spacing:.12em;margin-top:1px;font-size:13px;font-style:italic;line-height:1.35}.coursePosterPlace .ornament{margin-top:8px}.daysPill{color:#f0e0b5;font-family:var(--font-display-ja);letter-spacing:.06em;background:#140e048c;border:.5px solid #e6c97a80;border-radius:999px;margin-top:8px;padding:4px 12px;font-size:14px;display:inline-block}.posterMetaLine{color:#f6e8bd;max-width:100%;font-family:var(--font-display-ja);overflow-wrap:break-word;text-shadow:0 1px 8px #0000008c;margin-top:6px;font-size:13.5px;line-height:1.45;display:block}.loadMoreSentinel{text-align:center;padding:18px 16px 28px}.loadMoreSentinel button{width:100%;color:var(--gold-deep);font-family:var(--font-display-ja);background:#fdf7e9e6;border:1px solid #9f6b2380;border-radius:999px;padding:12px 16px;font-size:12px}.loadMoreSentinel span{color:var(--ink-mute);font-size:10px}.screenFooter{color:#c8b88c;text-align:center;background:#1a140b;border-top:1px solid #e6c97a2e;padding:20px 24px 16px}.screenFooterDark{color:#c8b88c;background:#100c07}.footerBrand{text-align:center}.footerBrand>span{color:#c8b88cd6;font-family:var(--font-display-ja);letter-spacing:.28em;margin-top:5px;font-size:15.5px;display:block}.footerBrand em{color:#8a7858;font-family:var(--font-display);letter-spacing:.28em;text-transform:uppercase;margin-top:8px;font-size:13px;font-style:italic;font-weight:400;line-height:1.4;display:block}.footerRule{background:#e6c97aad;width:30px;height:1px;margin:12px auto;display:block}.footerColumns{text-align:center;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:16px;display:grid}.footerColumns h2{color:#e6c97ad9;font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:400;line-height:1.5}.footerColumns a{color:#c8b88cdb;font-family:var(--font-body-ja);margin-bottom:9px;font-size:15.5px;line-height:1.7;display:block}.footerCopyright{color:#8a7858;font-family:var(--font-mono);letter-spacing:.16em;text-align:center;text-transform:uppercase;margin:0;font-size:13px;line-height:1.8}.detailHeroMock{height:620px;position:relative;overflow:hidden}.detailHeroGenerated{background:#0d1118;position:relative;overflow:hidden}.detailHeroGenerated .topBar{z-index:5;color:#f0e0b5;padding:20px 16px 12px;position:absolute;top:0;left:0;right:0}.detailHeroGenerated .iconButton{width:36px;height:36px}.hubShell{background:var(--paper);color:var(--ink)}.hubHero{border-bottom:1px solid var(--line);text-align:center;padding:52px 24px 28px}.hubHero p,.hubSectionHead p,.detailHubGuide p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;margin:0 0 7px;font-size:13px;line-height:1.5}.hubHero h1{color:var(--ink);font-family:var(--font-display-ja);margin:0 0 12px;font-size:50px;font-weight:500;line-height:1.2}.hubHero>span{color:var(--ink-soft);margin-top:13px;font-size:17.5px;line-height:1.8;display:block}.hubFeatured,.hubDirectory,.hubCourseGrid{padding:34px 16px 0}.hubSectionHead{margin-bottom:14px}.hubSectionHead h2,.detailHubGuide h2{color:var(--ink);font-family:var(--font-display-ja);margin:0;font-size:28px;font-weight:500;line-height:1.35}.hubDirectoryGrid{gap:9px;display:grid}.hubDirectoryItem{border:1px solid var(--line);background:var(--card);color:inherit;border-radius:8px;padding:14px 15px;text-decoration:none;display:block}.hubDirectoryItem strong{color:var(--ink);font-family:var(--font-display-ja);font-size:19.5px;font-weight:500;line-height:1.45;display:block}.hubDirectoryItem span{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;margin:4px 0 8px;font-size:11px;display:block}.hubDirectoryItem small{color:var(--ink-soft);font-size:14.5px;line-height:1.55;display:block}.hubCourseColumns{gap:10px;display:flex}.hubCourseColumns>div{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.hubCourseColumns>div:nth-child(2){padding-top:32px}.hubBreadcrumb,.detailBreadcrumb nav{color:var(--ink-soft);font-family:var(--font-body-ja);letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:0;font-size:16px;line-height:1.6;display:flex}.hubBreadcrumb,.detailBreadcrumb{border-top:.5px solid var(--line-soft);padding:18px 24px 22px}.hubBreadcrumb a,.detailBreadcrumb a{color:inherit;text-decoration:none}.hubBreadcrumb span,.detailBreadcrumb span{color:var(--gold);font-family:var(--font-display);padding:0 8px;font-size:17px;font-style:italic}.hubBreadcrumb a:last-child,.detailBreadcrumb a.isCurrent{color:var(--ink);font-weight:500}.infoShell{background:var(--paper);color:var(--ink)}.infoHero{border-bottom:1px solid var(--line);text-align:center;padding:52px 24px 30px}.infoHero p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;margin:0 0 7px;font-size:9px;line-height:1.5}.infoHero h1{color:var(--ink);font-family:var(--font-display-ja);margin:0 0 12px;font-size:30px;font-weight:500;line-height:1.3}.infoHero>span{color:var(--ink-soft);margin-top:13px;font-size:12.5px;line-height:1.8;display:block}.infoBody{gap:14px;padding:28px 16px 38px;display:grid}.infoSection{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:16px}.infoSection h2{color:var(--ink);font-family:var(--font-display-ja);margin:0 0 10px;font-size:16px;font-weight:500;line-height:1.45}.infoSection p{color:var(--ink-soft);margin:0 0 9px;font-size:12px;line-height:1.8}.infoSection p:last-child{margin-bottom:0}.detailHeroGenerated img{aspect-ratio:5/8;object-fit:cover;width:100%;display:block}.detailHeroCopy{z-index:2;text-align:center;position:absolute;top:32%;left:24px;right:24px;transform:translateY(-50%)}.detailHeroCopy p{color:#fff;font-family:var(--font-display-ja);overflow-wrap:break-word;text-shadow:0 1px 12px #0000008c;margin:0;font-size:24px;font-weight:500;line-height:1.35}.detailHeroCopy h1{color:#fff;font-family:var(--font-display-ja);letter-spacing:.005em;overflow-wrap:break-word;text-shadow:0 2px 16px #0009;margin:6px 0 0;font-size:46px;font-weight:500;line-height:1.12}.detailHeroCopy h1 span{display:block}.detailHeroCopy h1.detailHeroTitleCompact{font-size:42px;line-height:1.16}.detailHeroCopy .ornament{margin-top:18px}.detailHeroLead{color:#fffdf8e6;font-family:var(--font-body-ja);overflow-wrap:break-word;text-shadow:0 1px 8px #00000080;margin-top:16px;padding:0 6px;font-size:15px;line-height:1.85;display:block}.detailHeroCopy h1 span{color:inherit;font-family:inherit;font-size:inherit;line-height:inherit;text-shadow:inherit;margin-top:0;padding:0}.detailHeroPlace{z-index:2;text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:34px;left:24px;right:24px}.detailHeroPlace strong{color:#fff;font-family:var(--font-display-ja);overflow-wrap:break-word;text-shadow:0 1px 12px #0000008c;font-size:28px;font-weight:500;line-height:1.22}.detailHeroPlace small{max-width:100%;color:var(--gold-soft);font-family:var(--font-display);letter-spacing:.32em;text-transform:uppercase;overflow-wrap:normal;word-break:normal;margin-top:6px;font-size:13px;font-style:italic;line-height:1.5;display:block}.detailHeroPlace .ornament{margin-top:12px}.detailMetaBar{background:var(--paper);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;display:grid}.detailMetaCell{flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:0;padding:15px 8px 17px;display:flex}.detailMetaCell+.detailMetaCell{border-left:1px solid var(--line)}.detailMetaCellLabel{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;font-size:9.5px}.detailMetaCellValue{color:var(--ink);font-family:var(--font-display-ja);text-align:center;font-size:13.5px;font-weight:500;line-height:1.35}.detailMetaDiamond{color:var(--gold);flex:none}.sectionHead{padding:32px 24px 14px}.sectionHead p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;margin:0 0 6px;font-size:12px;line-height:1.4}.sectionHead h2{color:var(--ink);font-family:var(--font-display-ja);margin:0;font-size:26px;font-weight:500;line-height:1.3}.sectionHead span{background:var(--gold);width:36px;height:1px;margin-top:12px;display:block}.quoteLead,.sectionIntro{border-left:2px solid var(--gold);width:auto;max-width:none;color:var(--ink-soft);font-family:var(--font-body-ja);line-break:strict;overflow-wrap:break-word;white-space:normal;word-break:normal;margin:0 24px 16px;padding-left:12px;font-size:15.5px;font-style:italic;line-height:1.85}.sectionIntro{font-style:normal}.itineraryOverview{padding:0 24px 20px}.itineraryOverviewLead{color:var(--ink);font-family:var(--font-display-ja);letter-spacing:.005em;line-break:strict;overflow-wrap:break-word;word-break:normal;margin:0;font-size:16.5px;font-weight:500;line-height:1.85}.itineraryOverviewOrnament{align-items:center;gap:8px;margin:16px 0 14px;display:flex}.itineraryOverviewOrnament span:first-child{background:var(--gold);width:20px;height:1px}.itineraryOverviewOrnament span:nth-child(2){background:var(--gold-deep);border-radius:50%;width:3px;height:3px}.itineraryOverviewOrnament span:nth-child(3){background:var(--line-soft);flex:1;height:1px}.itineraryOverviewBody{color:var(--ink-soft);font-family:var(--font-body-ja);line-break:strict;overflow-wrap:break-word;word-break:normal;margin:0;font-size:15px;line-height:1.95}.itineraryOverviewBody+.itineraryOverviewBody{margin-top:11px}.sectionPlainIntro{color:var(--ink-soft);font-family:var(--font-body-ja);margin:0 24px 16px;font-size:15.5px;line-height:1.85}.pointCards{flex-direction:column;gap:10px;padding:0 16px;display:flex}.pointCard{border:1px solid var(--line);background:var(--card);border-radius:8px;align-items:stretch;display:flex;overflow:hidden}.pointThumb{flex:none;width:88px;min-height:82px}.pointThumb span{z-index:2;color:#fff;font-family:var(--font-display);text-shadow:0 1px 6px #000000b3;font-size:19.5px;font-style:italic;font-weight:500;position:absolute;top:6px;left:6px}.pointText{flex-direction:column;flex:1;justify-content:center;min-width:0;padding:10px 14px 11px;display:flex}.pointText h3{color:var(--ink);font-family:var(--font-display-ja);overflow-wrap:break-word;margin:0;font-size:18px;font-weight:500;line-height:1.35}.pointText p{color:var(--ink-soft);font-family:var(--font-body-ja);margin:4px 0 0;font-size:15px;font-weight:400;line-height:1.6}.routeMapCard{border:1px solid var(--line);background:linear-gradient(135deg,#f7eed8 0%,#efe1be 100%);border-radius:10px;margin:4px 16px 12px;padding:14px;position:relative;overflow:hidden;box-shadow:inset 0 0 60px #8a5e1c14}.routeMapCard:before{content:"";background-image:repeating-linear-gradient(0deg,#8a5e1c0a 0 1px,#0000 1px 4px),repeating-linear-gradient(90deg,#8a5e1c0a 0 1px,#0000 1px 4px);position:absolute;inset:0}.routeMapCard svg{width:100%;height:200px;display:block;position:relative}.routeMapCard text{fill:#3a2c19;font-family:var(--font-display-ja);font-size:13px;font-weight:500}.routeMapAsset{background:var(--paper);padding:0}.routeMapAsset:before{content:none}.routeMapAsset img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.generatedPointsMapSection{background:var(--paper);padding:18px 16px 12px}.generatedPointsMapAsset{border:1px solid var(--line);background:var(--paper);border-radius:10px;margin:0;overflow:hidden}.generatedPointsMapAsset img{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.generatedTwitterPointsSection{background:var(--paper);padding:18px 16px 12px}.generatedTwitterPointsAsset{border:1px solid var(--line);background:var(--paper);border-radius:10px;margin:0;overflow:hidden}.generatedTwitterPointsAsset img{width:100%;height:auto;display:block}.itineraryList{padding:0 16px}.dayPanelMock{margin-bottom:32px}.dayPanelMock>header{border-bottom:1px solid var(--gold);align-items:center;gap:12px;margin-bottom:8px;padding:4px 4px 8px;display:flex}.dayBadge{background:linear-gradient(180deg, #c89a48 0%, var(--gold-deep) 100%);color:#fff;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.dayBadge span{font-family:var(--font-mono);letter-spacing:.12em;opacity:.85;font-size:8.5px}.dayBadge strong{font-family:var(--font-display);font-size:19.5px;font-style:italic;font-weight:500;line-height:1}.dayPanelMock header p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:12px;line-height:1.4}.dayPanelMock h3{color:var(--ink);font-family:var(--font-display-ja);margin:2px 0 0;font-size:18px;font-weight:500;line-height:1.35}.dayBlocks{--block-time-col:42px;--block-kind-col:42px;--block-col-gap:8px;padding-left:14px;position:relative}.dayBlocks:before{background:var(--line);content:"";width:1px;position:absolute;top:5px;bottom:5px;left:4px}.dayBlock{margin-bottom:15px;position:relative}.dot{background:var(--gold);width:7px;height:7px;box-shadow:0 0 0 3px var(--paper);border-radius:50%;position:absolute;top:8px;left:-14px}.blockGrid{grid-template-columns:54px minmax(0,1fr);align-items:baseline;column-gap:14px;display:grid}.blockMeta{text-align:right}.blockMeta time{color:var(--ink-soft);font-family:var(--font-display);font-size:14.5px;font-style:italic;font-weight:500;line-height:1.25;display:block}.blockMeta time:empty:before{content:""}.blockMeta small{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;margin-top:4px;font-size:9px;display:block}.blockBody{min-width:0}.blockBody>strong{color:var(--ink);font-family:var(--font-display-ja);font-size:16px;font-weight:500;line-height:1.5;display:block}.blockBody>p{color:var(--ink-soft);font-family:var(--font-body-ja);overflow-wrap:break-word;margin:6px 0 0;font-size:14.5px;line-height:1.8}.blockImage{box-sizing:border-box;cursor:pointer;background:0 0;border:0;width:100%;margin:8px 0 0;padding:0;display:block;position:relative}.blockImage img{aspect-ratio:16/9;object-fit:cover;border:1px solid var(--line);background:var(--card);border-radius:6px;width:100%;display:block}.mediaZoom{width:24px;height:24px;color:var(--gold-soft);background:#140c0473;border:.5px solid #e6c97a80;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:8px;right:8px}.budgetCard,.hotelPlaceholder,.restaurantPlaceholder{border:1px solid var(--line);background:var(--card);border-radius:8px;margin:4px 16px;overflow:hidden}.budgetRow{border-bottom:.5px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:14px;min-height:54px;padding:14px 16px;display:flex}.budgetRow span{color:var(--ink-soft);flex:none;font-size:15.5px}.budgetRow strong{color:var(--ink);font-family:var(--font-display-ja);text-align:right;font-size:18px;font-weight:500;line-height:1.45}.budgetTotal{border-top:1px solid var(--gold);background:linear-gradient(#fdf7e9,#f6ead0);justify-content:space-between;align-items:center;gap:14px;padding:18px 16px;display:flex}.budgetTotal p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:12px}.budgetTotal span{color:var(--ink);font-family:var(--font-display-ja);margin-top:1px;font-size:15.5px;display:block}.budgetTotal strong{color:var(--gold-deep);font-family:var(--font-display);text-align:right;font-size:26px;font-weight:500;line-height:1.15}.budgetNote{color:var(--ink-soft);margin:10px 20px 0;font-size:14.5px;line-height:1.7}.seasonCard{border:1px solid var(--line);background:var(--card);border-radius:8px;margin:0 16px 10px;padding:14px 12px 16px}.seasonBars{align-items:flex-end;gap:3px;height:88px;display:flex}.seasonMonth{flex-direction:column;flex:1;align-items:center;gap:3px;min-width:0;display:flex}.seasonMonth span{color:var(--ink-mute);font-family:var(--font-mono);font-size:10.5px;line-height:1}.seasonMonth span.isHot{color:var(--terra)}.seasonMonth i{background:var(--line);border-radius:2px;width:100%;min-height:8px}.seasonMonth i.isBest{background:linear-gradient(180deg, var(--gold) 0%, var(--gold-deep) 100%)}.seasonMonth strong{color:var(--ink-mute);font-family:var(--font-mono);font-size:11px;font-weight:400;line-height:1}.seasonMonth strong.isBest{color:var(--gold-deep);font-weight:600}.seasonLegend{border-top:.5px solid var(--line-soft);color:var(--ink-soft);align-items:center;gap:14px;margin-top:14px;padding-top:12px;font-size:14px;display:flex}.seasonLegend span{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.seasonLegend i{background:linear-gradient(90deg, var(--gold), var(--gold-deep));border-radius:1px;width:12px;height:3px}.seasonLegend em{color:var(--line);font-style:normal}.seasonAvoid{background:#a550340f;border:1px solid #a550342e;border-radius:6px;align-items:flex-start;gap:10px;margin:0 16px 6px;padding:10px 14px;display:flex}.seasonAvoid strong{color:var(--terra);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;flex:none;font-size:12px;font-weight:500}.seasonAvoid span{color:var(--ink-soft);font-size:14.5px;line-height:1.7}.eventList{flex-direction:column;gap:10px;padding:0 16px;display:flex}.eventCard{border:1px solid var(--line);background:var(--card);border-radius:8px;flex-direction:column;padding:14px 16px;display:flex}.eventCardEyebrow{border-bottom:.5px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding-bottom:8px;display:flex}.eventCardDate{flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0;display:inline-flex}.eventCardDate .detailMetaDiamond{align-self:center}.eventCardDate em{color:var(--gold-deep);font-family:var(--font-display);letter-spacing:.01em;font-size:18px;font-style:italic;font-weight:500}.eventCardDate small{color:var(--ink-mute);font-family:var(--font-body-ja);font-size:12px}.eventCardKind{border:.5px solid var(--gold);color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex:none;padding:2px 8px;font-size:10.5px}.eventCardName{color:var(--ink);font-family:var(--font-display-ja);margin:0;font-size:18px;font-weight:500;line-height:1.4}.eventCardCity{color:var(--gold-deep);font-family:var(--font-display);letter-spacing:.04em;margin:3px 0 6px;font-size:13.5px;font-style:italic;font-weight:500;display:block}.eventCardDesc{color:var(--ink-soft);font-family:var(--font-body-ja);margin:0;font-size:15px;line-height:1.7}.flightLegBlock{margin:0 16px 22px}.flightLegStack{flex-direction:column;gap:44px;margin-bottom:22px;display:flex}.flightTransferSummary{color:var(--ink-soft);font-family:var(--font-body-ja);gap:6px;padding:0 16px 14px;font-size:11px;line-height:1.65;display:grid}.flightTransferSummary span{border-left:1px solid var(--gold);padding-left:10px}.flightLocalBlock{margin-top:22px}.flightLegOpener{text-align:center;margin-bottom:12px}.flightLegOpener>div{color:var(--ink);font-family:var(--font-display-ja);letter-spacing:.32em;padding-left:.32em;font-size:24px;font-weight:500;line-height:1.2}.flightLegOpener span{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.32em;text-transform:uppercase;align-items:center;gap:8px;margin-top:6px;font-size:12px;display:inline-flex}.flightLegOpener em{font-style:normal}.flightLegOpener svg{width:10px;height:10px}.flightLegSummary{border:1px solid var(--line);background:linear-gradient(90deg, #fffdf8d1, #fffdf800 58%), var(--paper-2);border-radius:8px;padding:14px 16px 13px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff8c}.flightLegSummaryHead{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.flightLegKicker{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;font-size:12px}.flightLegLabel{color:var(--ink-mute);font-family:var(--font-display);letter-spacing:0;font-size:15.5px;font-style:italic;font-weight:600}.flightStopoverHead{align-items:baseline;gap:9px;margin:0 0 9px;display:flex}.flightLegRoute{align-items:flex-end;gap:8px;margin-bottom:12px;display:flex}.flightLegEndpoint{text-align:left;flex:none;min-width:70px}.flightLegEndpointEnd{text-align:right}.flightLegEndpoint strong{color:var(--ink);font-family:var(--font-display);letter-spacing:.02em;overflow-wrap:break-word;font-size:27.5px;font-weight:600;line-height:1;display:block}.flightLegEndpoint span{color:var(--ink-soft);font-family:var(--font-display-ja);margin-top:4px;font-size:17px;font-weight:500;line-height:1.35;display:block}.flightLegEndpointNoCode span{color:var(--ink);margin-top:0;font-size:17px;font-weight:600}.flightLegPath{height:22px;color:var(--gold-deep);flex:1;margin-bottom:2px;position:relative}.flightLegPath span{opacity:.62;border-top:1px solid #9a631a7a;position:absolute;top:50%;left:4px;right:4px}.flightLegPath:before{background:var(--gold-deep);content:"";border-radius:999px;width:5px;height:5px;position:absolute;top:50%;left:-2px;transform:translateY(-50%)}.flightLegPath svg{width:16px;height:16px;position:absolute;top:50%;right:-2px;transform:translateY(-50%)}.flightLegMeta{border-top:1px solid var(--line-soft);color:var(--ink-soft);font-family:var(--font-body-ja);letter-spacing:0;flex-wrap:wrap;align-items:center;gap:10px;padding-top:10px;font-size:14.5px;display:flex}.flightLegMetaSep{background:var(--line);color:#0000;width:1px;height:10px;margin:0 10px;display:inline-block;overflow:hidden}.flightRoutes{flex-direction:column;gap:12px;margin-top:12px;display:flex}.flightRoute{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:14px 14px 12px;transition:background-color .15s;position:relative}.flightRoute+.flightRoute{border-top:1px solid var(--line)}.flightRoute.isRecommended{border-color:var(--gold);box-shadow:inset 0 1px 0 var(--gold-soft);margin-top:10px;padding-top:20px}.flightRouteRecommend{background:var(--gold-deep);color:#fff;font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;border-radius:999px;padding:3px 9px 3px 10px;font-size:12px;line-height:1.2;position:absolute;top:-1px;right:12px;transform:translateY(-50%)}.flightRouteTop{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.flightRouteTop h4{color:var(--ink);font-family:var(--font-display-ja);margin:0;font-size:18px;font-weight:600;line-height:1.5}.flightRouteTag{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.1em;white-space:nowrap;background:#9f6b231a;border-radius:999px;flex:none;padding:2px 9px;font-size:8px}.flightRouteMeta{border-top:.5px solid var(--line-soft);margin-bottom:10px;display:grid}.flightRouteMetaItem{border-bottom:.5px solid var(--line-soft);color:var(--ink);grid-template-columns:60px 1fr;align-items:baseline;gap:12px;padding:7px 0;font-size:16.5px;line-height:1.4;display:grid}.flightRouteMetaItem i{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;font-size:11px;font-style:normal}.flightRouteWhy{color:var(--ink-soft);font-family:var(--font-body-ja);margin:0;font-size:15px;font-style:italic;line-height:1.8}.flightNote{border-left:2px solid var(--gold);color:var(--ink-soft);font-family:var(--font-body-ja);margin:10px 0 0;padding-left:11px;font-size:15.5px;line-height:1.8}.flightGhostButton{color:#fff;width:calc(100% - 32px);font-family:var(--font-display-ja);letter-spacing:.04em;background:linear-gradient(#c89a48 0%,#a17029 100%);border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin:18px 16px 4px;padding:13px 16px;font-size:18.5px;font-weight:600;text-decoration:none;transition:box-shadow .15s,transform .15s;display:flex;box-shadow:0 4px 12px -4px #8a5e1c80}.flightGhostButton:hover,.flightGhostButton:focus-visible{transform:translateY(-1px);box-shadow:0 7px 18px -5px #8a5e1c9e}.flightGhostButton svg{width:16px;height:16px}.placeTier{margin-bottom:16px}.placeTier>header,.restaurantGroup>header{border-bottom:.5px solid var(--line-soft);align-items:baseline;gap:10px;margin-bottom:12px;padding:6px 24px 10px;display:flex}.placeTier header span,.restaurantGroup header span{background:var(--gold);width:18px;height:1px}.placeTier header small,.restaurantGroup header small{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;font-size:11px}.placeTier header strong,.restaurantGroup header strong{color:var(--ink);font-family:var(--font-display-ja);font-size:18px;font-weight:500}.placeTier header em{color:var(--gold-deep);font-family:var(--font-display);letter-spacing:.04em;margin-left:auto;font-size:21.5px;font-style:italic}.hotelPlaceholder{align-items:stretch;display:flex}.hotelList,.restaurantList{flex-direction:column;gap:8px;padding:0 16px;display:flex}.hotelList .hotelPlaceholder,.restaurantList .restaurantPlaceholder{margin-left:0;margin-right:0}.hotelPlaceholder .photoSurface{flex:none;width:110px}.hotelPlaceholder>div:last-child,.restaurantPlaceholder{padding:10px 12px 11px}.placeTitleRow{align-items:baseline;gap:8px;display:flex}.placeTitleRow strong{color:var(--ink);font-family:var(--font-display-ja);flex:1;font-size:18px;font-weight:500;line-height:1.35}.placeTitleRow .placeReserveLink{flex:1;text-decoration:none}.placeTitleRow .placeReserveLink strong{border-bottom:1px solid color-mix(in srgb, var(--gold-deep) 55%, transparent);transition:color .15s,border-color .15s}.placeTitleRow .placeReserveLink:hover strong,.placeTitleRow .placeReserveLink:focus-visible strong{color:var(--gold-deep);border-bottom-color:var(--gold-deep)}.placeTitleRow span{color:var(--gold-deep);font-family:var(--font-display);flex:none;font-size:16px;font-style:italic}.hotelPlaceholder small,.restaurantPlaceholder small{color:var(--gold-deep);font-family:var(--font-display);letter-spacing:.04em;margin-top:2px;font-size:13.5px;font-style:italic;display:block}.hotelPlaceholder p,.restaurantPlaceholder p{color:var(--ink-soft);margin:5px 0 0;font-size:15px;line-height:1.65}.restaurantTabs{scrollbar-width:none;gap:6px;padding:0 16px 14px;display:flex;overflow-x:auto}.restaurantTabs button{border:.5px solid var(--line);color:var(--ink-soft);cursor:pointer;font-family:var(--font-body-ja);background:0 0;border-radius:999px;flex:none;padding:5px 12px;font-size:14.5px}.restaurantTabs .tabActive{border-color:var(--ink);background:var(--ink);color:var(--paper);font-weight:500}.dollarLegendBlock{margin:0 24px 22px}.priceGuideHead{align-items:center;gap:10px;margin-bottom:12px;display:flex}.priceGuideHead p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;flex:none;margin:0;font-size:12px;line-height:1}.priceGuideHead>span{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.priceGuideHead i{background:var(--line);flex:1;height:1px}.priceGuideHead b{background:var(--gold);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);opacity:.75;flex:none;width:8px;height:6px}.priceGuideHead em{color:var(--ink-mute);font-family:var(--font-display);flex:none;font-size:15.5px;font-style:italic;line-height:1}.dollarLegend{border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);margin:0;padding:0;list-style:none}.dollarLegend li{color:var(--ink-soft);grid-template-columns:72px minmax(0,1fr) auto;align-items:center;column-gap:14px;padding:12px 4px;font-size:12px;line-height:1.3;display:grid}.dollarLegend li+li{border-top:.5px solid var(--line-soft)}.dollarLegend em{gap:2px;min-width:0;font-style:normal;display:flex}.dollarLegend em span{color:var(--gold-deep);font-family:var(--font-display);letter-spacing:0;opacity:.28;font-size:20px;font-style:italic;font-weight:500;line-height:1}.dollarLegend em span.isActive{opacity:1}.dollarLegend strong{min-width:0;color:var(--ink);font-family:var(--font-display-ja);letter-spacing:.02em;font-size:16px;font-weight:500}.dollarLegend li>span{color:var(--gold-deep);font-family:var(--font-display);letter-spacing:.01em;white-space:nowrap;font-size:16.5px;font-style:italic;font-weight:500}.dollarLegendNote{color:var(--ink-mute);margin:9px 0 0;font-size:9.5px;line-height:1.6}.restaurantGroup{margin-bottom:16px}.restaurantGroup>header{margin-bottom:10px;padding-top:4px;padding-bottom:8px}.restaurantPlaceholder{padding:12px 14px}.relatedRail{scrollbar-width:none;gap:12px;padding:4px 16px 16px;display:flex;overflow-x:auto}.relatedCard{flex:none;width:220px}.detailCourseNotice{border-left:2px solid var(--gold);background:var(--paper-2);border-radius:4px;margin:24px 16px 8px;padding:14px}.detailCourseNotice p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;margin:0 0 6px;font-size:11px}.detailCourseNotice div{color:var(--ink-soft);font-size:14px;line-height:1.7}.searchShell{background:var(--paper)}.searchHero{background:var(--paper);color:var(--ink);text-align:center;padding:86px 24px 22px}.searchHero p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;margin:0 0 8px;font-size:11px}.searchHero h1{font-family:var(--font-display-ja);margin:0;font-size:32px;font-weight:500;line-height:1.25}.searchHero .ornament{margin:14px auto 0}.searchHero span{color:var(--ink-soft);margin-top:14px;font-size:17px;line-height:1.8;display:block}.searchPanel{padding:18px 16px 28px}.searchCountBlock{text-align:center;margin:0 0 18px;position:relative}.searchCountBlock strong{color:var(--gold-deep);font-family:var(--font-display);font-size:35px;font-style:italic;font-weight:400;line-height:1;display:block}.searchCountBlock span{color:var(--ink-soft);margin-top:4px;font-size:15.5px;line-height:1.5;display:block}.searchCountBlock button{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;background:0 0;border:0;font-size:13px;position:absolute;top:4px;right:0}.searchBox,.searchSelect{margin-bottom:12px;display:block}.searchBox span,.searchSelect span{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;margin-bottom:6px;font-size:11px;display:block}.searchBox input,.searchSelect select{border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);font-family:var(--font-body-ja);border-radius:8px;padding:13px 14px;font-size:18px}.searchFilterSection{margin:14px 0 18px}.searchFilterTitle{justify-content:space-between;align-items:flex-end;margin-bottom:10px;display:flex}.searchFilterTitle p{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:11px;line-height:1.5}.searchFilterTitle h2{color:var(--ink);font-family:var(--font-display-ja);margin:1px 0 0;font-size:21.5px;font-weight:500;line-height:1.4}.searchFilterTitle>span{background:var(--gold);width:24px;height:1px}.searchFilterGroup{scrollbar-width:none;flex-wrap:wrap;gap:6px;margin-bottom:0;padding-bottom:2px;display:flex}.searchFilterGroup button{border:1px solid var(--line);background:var(--card);color:var(--ink);font-family:var(--font-body-ja);letter-spacing:.04em;border-radius:999px;flex:none;padding:7px 13px;font-size:15.5px;font-weight:500}.searchFilterGroup button.active{border-color:var(--gold-deep);color:#fffaee;background:linear-gradient(#c89a48 0%,#a17029 100%);box-shadow:0 4px 10px -4px #8a5e1c66}.searchResultHead{justify-content:space-between;align-items:baseline;margin:18px 0 12px;display:flex}.searchResultHead p{color:var(--gold-deep);font-family:var(--font-display);margin:0;font-size:18px;font-style:italic}.searchResultHead span{color:var(--ink-soft);font-size:15.5px}.searchResultGrid{gap:10px;display:flex}.searchResultGrid>div{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.searchResultGrid>div:nth-child(2){padding-top:32px}.emptySearch{border:1px solid var(--line);background:var(--paper-2);color:var(--ink-soft);text-align:center;border-radius:8px;padding:28px 18px;font-size:12px;line-height:1.7}.container{width:min(960px,100% - 32px);margin:0 auto}.sans{font-family:var(--font-sans)}.subHero{background:var(--paper);border-bottom:1px solid var(--line)}.subHero .container{padding:56px 0}.subHero h1,.section h2{color:var(--ink);font-family:var(--font-display-ja);letter-spacing:0;margin:0;font-weight:500;line-height:1.12}.subHero h1{font-size:58.5px}.subHero p:not(.eyebrow){max-width:680px;color:var(--ink-soft);line-height:1.85}.eyebrow{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;margin:0 0 10px;font-size:14px}.section{background:var(--paper);padding:44px 0}.textLink{color:var(--gold-deep);font-family:var(--font-sans);font-size:18px;font-weight:700}.hubLayout{grid-template-columns:1fr 1fr;gap:24px;display:grid}.hubList{gap:10px;margin-top:18px;display:grid}.hubItem,.adminStats div,.plainList{border:1px solid var(--line);background:var(--card);border-radius:8px}.hubItem{padding:16px}.hubItem strong,.hubItem span,.hubItem a{display:block}.hubItem strong{font-family:var(--font-display-ja);font-size:22.5px}.hubItem span{color:var(--ink-mute);letter-spacing:.08em;text-transform:uppercase;margin:4px 0 10px;font-size:15.5px}.hubItem a{color:var(--ink-soft);margin-top:6px;font-size:17px;line-height:1.5}.adminStats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.adminStats div{padding:18px}.adminStats span{color:var(--gold-deep);font-family:var(--font-display);font-size:44.5px;font-style:italic;display:block}.adminStats strong{color:var(--ink-soft);margin-top:6px;font-size:17px;display:block}.plainList{color:var(--ink-soft);margin:18px 0 0;padding:20px 24px;line-height:1.8}@media (max-width:720px){body{background:var(--hero-dark)}.phoneShell{width:100%;box-shadow:none}.hubLayout,.adminStats{grid-template-columns:1fr}.subHero h1{font-size:47.5px}}.placeCardLink{color:inherit;cursor:pointer;text-decoration:none;transition:border-color .15s,box-shadow .15s}a.restaurantPlaceholder.placeCardLink{display:block}.placeCardLink:hover,.placeCardLink:focus-visible{border-color:var(--gold-deep);box-shadow:0 6px 18px -12px #8a5e1c8c}.reserveTip{color:var(--gold-deep);font-family:var(--font-display-ja);letter-spacing:.02em;margin-top:7px;font-size:10.5px;font-weight:500;display:inline-block}.placeCardLink:hover .reserveTip,.placeCardLink:focus-visible .reserveTip{text-decoration:underline}.placeSearchCta{width:calc(100% - 32px);color:var(--gold-deep);font-family:var(--font-display-ja);background:0 0;border:1px solid #9f6b23a6;border-radius:999px;justify-content:center;align-items:center;gap:7px;margin:14px 16px 0;padding:11px 14px;font-size:12px;font-weight:500;text-decoration:none;display:flex}.placeSearchCta:hover,.placeSearchCta:focus-visible{background:#9f6b2314}.tripGallery{padding:2px 0 18px}.tripGalleryTrack{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:12px;padding:0 24px 2px;display:flex;overflow-x:auto}.tripGalleryTrack::-webkit-scrollbar{display:none}.tripGallerySlide{scroll-snap-align:center;flex:none;width:78%;max-width:300px}.tripGalleryFigure{border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:8px;width:100%;height:212px;padding:0;display:block;position:relative;overflow:hidden;box-shadow:0 8px 22px -14px #3c280c73}.tripGalleryFigure img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.tripGalleryDay{background:#140c0480;border:.5px solid #e6c97a80;border-radius:999px;align-items:baseline;gap:5px;padding:3px 9px;display:inline-flex;position:absolute;top:10px;left:10px}.tripGalleryDay span:first-child{color:var(--gold-soft);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:8.5px}.tripGalleryDay span:last-child{color:#fff;font-family:var(--font-display);font-size:13px;font-style:italic;font-weight:500;line-height:1}.tripGalleryCaption{padding:8px 2px 0}.tripGalleryCaption>span{color:var(--gold-deep);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;margin-bottom:2px;font-size:9.5px;display:block}.tripGalleryCaption>p{color:var(--ink-soft);font-family:var(--font-body-ja);margin:0;font-size:12.5px;line-height:1.5}.tripGalleryDots{justify-content:center;gap:5px;margin-top:12px;display:flex}.tripGalleryDots button{background:var(--line);cursor:pointer;border:0;border-radius:999px;width:6px;height:6px;padding:0;transition:width .25s,background .25s}.tripGalleryDots button.isActive{background:var(--gold-deep);width:18px}.imageLightbox{z-index:1000;background:#0a0703ed;flex-direction:column;justify-content:center;align-items:center;padding:24px 16px;display:flex;position:fixed;inset:0}.imageLightboxClose{width:40px;height:40px;color:var(--gold-soft);cursor:pointer;background:#ffffff0f;border:.5px solid #e6c97a99;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:18px;right:18px}.imageLightboxBody{flex-direction:column;width:100%;max-width:460px;display:flex}.imageLightboxFigure{border:1px solid #e6c97a66;border-radius:10px;margin:0;overflow:hidden;box-shadow:0 24px 60px -20px #000000b3}.imageLightboxFigure img{object-fit:contain;background:#0a0703;width:100%;max-height:70vh;display:block}.imageLightboxCaption{margin-top:14px;padding-left:2px}.imageLightboxCaption>span{color:var(--gold-soft);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;margin-bottom:5px;font-size:10.5px;display:block}.imageLightboxCaption>strong{color:#fff;font-family:var(--font-display-ja);font-size:17px;font-weight:500;line-height:1.5;display:block}
