:root{--paper:#f5f3ed;--white:#fffefa;--ink:#142a43;--muted:#64778b;--blue:#3158e8;--line:#dde3e6;--font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:auto;}body{margin:0;background:var(--paper);font:14px/1.8 var(--font);color:var(--ink);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure,dl,dd{margin:0}h1,h2,h3{font-weight:650}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;appearance:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:4px}img{display:block;max-width:100%}[hidden]{display:none!important}::selection{background:#d7e1fc}.wide{width:min(1440px,calc(100% - 112px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap;border:0}.skip-link{position:fixed;top:-90px;left:20px;z-index:50;padding:10px 20px;background:var(--white)}.skip-link:focus{top:12px}
.site-header{background:#faf9f5}.header-inner{height:76px;display:flex;align-items:center;gap:64px}.brand{display:inline-flex;align-items:center;gap:12px;white-space:nowrap;font-size:21px;line-height:1.2;letter-spacing:-.55px}.brand b{font-weight:650}.brand-symbol{display:flex;gap:3px;align-items:center;width:30px;height:28px;transform:skew(-24deg);color:var(--blue)}.brand-symbol i{display:block;width:7px;border-radius:5px;background:currentColor}.brand-symbol i:nth-child(1){height:17px;align-self:flex-end}.brand-symbol i:nth-child(2){height:27px}.brand-symbol i:nth-child(3){height:21px;align-self:flex-start}.header-nav{display:flex;gap:32px;font-size:12px}.header-nav a:hover,.home-link:hover,.case-footer a:hover{color:var(--blue)}.home-link{margin-left:auto;font-size:11px;color:#52677f;white-space:nowrap}.home-link span{margin-left:12px}
.case-shell{display:grid;grid-template-columns:204px minmax(0,1fr);gap:48px;align-items:start}.case-directory{position:sticky;top:30px;align-self:start;padding:38px 0}.overline{font-size:10px;line-height:1.6;letter-spacing:1.2px;color:#6e8094}.directory-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.directory-heading h2{font-size:25px;line-height:1.5;letter-spacing:-.6px;margin-top:6px}.directory-lead{font-size:11px;color:#728296;margin-top:9px}.case-list{display:grid;gap:16px;margin-top:28px}.case-card{width:100%;display:block;padding:0;border:0;background:transparent;text-align:left}.case-card-image{overflow:hidden;aspect-ratio:1.6;border-radius:4px;background:#d7e0e9}.case-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.case-card:hover img{transform:scale(1.025)}.case-card-body{padding-top:12px}.case-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:#74869a}.case-card-meta>i{width:5px;height:5px;border-radius:50%;background:var(--blue);flex:none}.case-card strong{display:block;font-size:14px;line-height:1.6;font-weight:600;margin-top:6px}.case-card small{display:block;font-size:11px;color:#75869a;margin-top:5px}.directory-close,.directory-toggle,.directory-shade{display:none}.case-content{min-width:0}
.case-toolbar{position:sticky;top:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;background:#f5f3edf5;backdrop-filter:blur(12px);margin-bottom:25px}.current-case-label{display:flex;align-items:center;flex:1;min-width:0;font-size:11px;color:#7b8797}.style-switch{display:flex;gap:3px;padding:4px;background:#e9e9e4;border-radius:6px}.style-switch button{display:flex;align-items:center;justify-content:center;gap:7px;padding:8px 13px;border:0;border-radius:4px;background:transparent;color:#6f7f90;font-size:12px;line-height:1.5;white-space:nowrap;transition:background .2s,color .2s}.style-switch svg{width:16px;height:16px;flex:none}.style-switch button[aria-pressed=true]{background:var(--white);color:#244b9f;box-shadow:0 1px 5px #23394e09}
.case-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:center}.intro-copy{padding:12px 0}.intro-eyebrow{color:#6a80a0;font-size:11px;letter-spacing:1px}.intro-copy h1{font-size:clamp(30px,2.7vw,40px);line-height:1.4;letter-spacing:-.055em;margin-top:13px;text-wrap:balance}.intro-subtitle{font-size:14px;color:#65778e;margin-top:16px}.intro-tags{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px}.intro-tags span{font-size:11px;color:#64809e}.intro-daily-link{display:inline-flex;align-items:center;gap:18px;margin-top:23px;color:#3158bc;font-size:12px}.intro-photo{position:relative;aspect-ratio:1.5;overflow:hidden;border-radius:4px;background:#d3dce3}.intro-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 58%}.intro-photo:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#102a4163)}.intro-photo figcaption{position:absolute;z-index:1;left:17px;bottom:14px;font-size:10px;letter-spacing:.5px;color:#fff}
.quote-summary{display:flex;align-items:center;gap:30px;padding:23px 26px;margin-top:30px;background:#eaf0f1;border-radius:5px}.quote-main{flex:none}.quote-main .overline{font-size:10px;letter-spacing:0;color:#5b7290}.quote-price{font-size:30px;line-height:1.4;font-weight:600;letter-spacing:-1px;font-variant-numeric:tabular-nums;color:#224872}.quote-price small{font-size:11px;font-weight:400;letter-spacing:0;margin-left:4px}.quote-facts{display:grid;grid-template-columns:repeat(3,auto);gap:24px;flex:1}.quote-facts>span{font-size:10px;color:#708295;line-height:1.9}.quote-facts b{display:block;font-size:12px;color:#36546f;font-weight:550}.quote-details{font-size:11px;white-space:nowrap;color:#315b8b}.quote-details span{margin-left:5px}
.route-overview{padding:35px 0 0;margin-bottom:44px}.section-label{display:flex;align-items:baseline;justify-content:space-between;gap:18px}.section-label h2{font-size:23px;line-height:1.5;letter-spacing:-.5px;margin-top:4px}.section-label p{font-size:11px;color:#74869a}.route-strip{display:grid;gap:0;margin-top:23px}.route-stop{position:relative;padding:15px 0 0}.route-stop:before{content:"";position:absolute;height:1px;top:3px;left:0;right:0;background:#c9d3da}.route-stop:after{content:"";position:absolute;top:0;left:0;width:7px;height:7px;border-radius:50%;background:#728fad;box-shadow:0 0 0 5px var(--paper)}.route-stop:last-child:before{display:none}.route-stop small{display:block;font-size:10px;color:#7f90a3}.route-stop strong{display:block;font-size:15px;font-weight:550;margin-top:2px}
.daily-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px}.daily-heading h2{font-size:27px;letter-spacing:-.7px;margin-top:4px}.daily-heading>p{font-size:11px;color:#7d8da0;padding-bottom:5px;white-space:nowrap}.day-navigation{position:sticky;top:var(--hainan-sticky-height,0px);z-index:12;display:grid;grid-template-columns:repeat(var(--day-count,5),minmax(0,1fr));background:var(--paper);padding:6px 0 13px;margin-bottom:27px}.day-nav-button{position:relative;display:flex;align-items:baseline;justify-content:center;gap:8px;min-width:0;padding:11px 4px;border:0;background:transparent;color:#75869a;font-size:13px;line-height:1.6;white-space:nowrap}.day-nav-button span{font-size:10px;letter-spacing:.2px}.day-nav-button b{font-weight:550}.day-nav-button:after{content:"";position:absolute;bottom:1px;left:25%;right:25%;height:2px;background:transparent}.day-nav-button[aria-current=true]{color:#244d9f}.day-nav-button[aria-current=true]:after{background:#486eb0}.day-nav-button:hover{color:var(--blue)}
.day-panels{display:grid;gap:64px}.day-panel{min-width:0}.day-heading{display:flex;gap:17px;align-items:center;margin-bottom:20px}.day-number{font-size:42px;line-height:1;font-weight:400;color:#acb8c2;letter-spacing:-3px;flex:none;font-variant-numeric:tabular-nums}.day-route{font-size:11px;color:#6b83a1;line-height:1.6}.day-route span{color:#afbac6;margin:0 4px}.day-heading h3{font-size:23px;line-height:1.65;letter-spacing:-.6px;margin-top:4px;text-wrap:pretty}.day-panel-content{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:30px;align-items:start}.day-copy{min-width:0}.day-lead{font-size:14px;line-height:1.95;color:#526980;text-wrap:pretty}.day-stops{list-style:none;padding:0;margin:21px 0 0;display:grid;gap:17px}.day-stops li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:13px}.stop-period{font-size:10px;color:#8a98a7;line-height:2.3}.day-stops h4{font-size:14px;line-height:1.7;font-weight:600;color:#304e6a}.day-stops p{font-size:13px;line-height:1.95;color:#6b7d90;margin-top:4px;text-wrap:pretty}.day-facts{display:grid;gap:9px;margin-top:21px}.day-fact{display:grid;grid-template-columns:34px minmax(0,1fr);gap:13px;font-size:12px;line-height:1.9}.day-fact dt{font-size:10px;color:#8a98a7}.day-fact dd{color:#526e89}.day-fact small{display:block;font-size:11px;color:#7b8da0}.day-note{font-size:11px;line-height:1.9;color:#8190a0;margin-top:16px}.day-note b{font-weight:500;color:#6a7f95}
.day-media{display:flex;align-items:flex-start;justify-content:center;gap:13px;min-width:0;padding-top:5px}.day-photo{margin:0;min-width:0;width:100%;max-width:370px}.day-photo.is-portrait{max-width:236px}.day-photo img{width:100%;height:auto;border-radius:3px}.day-photo figcaption{font-size:10px;line-height:1.7;color:#8290a0;margin-top:8px}.day-media.is-pair .day-photo{flex:var(--photo-ratio) 1 0;max-width:none}.day-media.is-pair{gap:12px}
.itinerary-table{width:100%;border-collapse:collapse;table-layout:fixed}.itinerary-table th,.itinerary-table td{overflow-wrap:anywhere;text-align:left}.itinerary-table thead th{font-size:11px;font-weight:550;color:#68809a;padding:12px 14px;background:#eaf0f1;border:0}.itinerary-table thead th:first-child{width:11%}.itinerary-table thead th:nth-child(2){width:18%}.itinerary-table thead th:nth-child(3){width:48%}.itinerary-table thead th:nth-child(4){width:23%}.itinerary-table tbody th,.itinerary-table tbody td{padding:25px 14px;vertical-align:top;font-size:12px;line-height:1.95;font-weight:400;border-bottom:1px solid #dce3e5}.table-day-link{display:flex;flex-direction:column;padding:0;border:0;background:transparent;text-align:left;line-height:1.7;color:#486b96}.table-day-link>span{font-size:10px;white-space:nowrap}.table-day-link strong{font-size:14px;font-weight:550;margin-top:4px}.table-day-link:hover{color:var(--blue)}.table-route{font-size:12px;color:#607992}.table-arrangements ol{padding:0;list-style:none;margin:0;display:grid;gap:12px}.table-arrangements li strong{display:block;font-size:13px;line-height:1.8;font-weight:550;color:#3a5874}.table-arrangements li>span{display:block;font-size:12px;line-height:1.9;color:#708297;margin-top:2px}.table-meal{font-size:11px;color:#7b8da0;margin-top:15px;line-height:1.9}.table-meal b{font-weight:500;color:#597694;margin-right:8px}.table-stay>strong{display:block;font-size:12px;font-weight:550;color:#4e6b86;line-height:1.9}.table-stay>small{display:block;font-size:11px;color:#8594a4;line-height:1.9;margin-top:6px}
.reception{padding-top:59px}.reception-heading h2,.pricing-heading h2{font-size:25px;line-height:1.5;letter-spacing:-.5px;margin-top:4px}.reception-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:38px;margin-top:24px}.hotel-panel>h3,.service-panel>h3,.pricing-columns h3{font-size:14px;color:#47647f;font-weight:600;margin-bottom:18px}.hotel-list{display:grid;gap:20px}.hotel-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:start}.hotel-place>span{display:block;font-size:9px;color:#8a9aad}.hotel-place strong{display:block;font-size:12px;color:#6f859d;font-weight:500}.hotel-description h4{font-size:13px;font-weight:550;line-height:1.8}.hotel-description p{font-size:10px;color:#8392a2;line-height:1.9;margin-top:2px}.hotel-rate{text-align:right;white-space:nowrap}.hotel-rate strong{display:block;font-size:13px;color:#4a6b8b;font-weight:550;line-height:1.8}.hotel-rate span{display:block;font-size:9px;color:#8597a9;line-height:1.9;margin-top:2px}.service-list{display:grid;gap:18px}.service-item h4{font-size:12px;font-weight:550;color:#4f6e8b}.service-item p{font-size:12px;line-height:1.95;color:#75869a;margin-top:4px;text-wrap:pretty}
.pricing{padding-top:55px}.pricing-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px}.quote-total{font-size:13px;font-weight:500;color:#3d6084;padding-bottom:3px}.pricing-note{font-size:11px;line-height:1.9;color:#8593a3;margin-top:14px;max-width:750px}.pricing-columns{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;margin-top:25px}.included-list{display:grid;gap:14px}.included-list>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px}.included-list dt{font-size:12px;font-weight:500;color:#5b7590}.included-list dd{font-size:12px;color:#74869a;line-height:1.95}.excluded-list{list-style:none;margin:0;padding:0;display:grid;gap:11px}.excluded-list li{position:relative;padding-left:12px;font-size:12px;line-height:1.95;color:#74869a}.excluded-list li:before{content:"";position:absolute;left:0;top:10px;width:3px;height:3px;border-radius:50%;background:#95a6b9}.travel-notes{padding-top:45px}.travel-notes h2{font-size:18px;line-height:1.6}.travel-notes ul{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:9px}.travel-notes li{font-size:12px;line-height:1.95;color:#7b8b9d}.case-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:35px 0 30px;margin-top:26px;font-size:10px;color:#8795a6}.case-footer a{color:#607b9c}.case-footer a span{margin-left:8px}.no-script{padding:30px;text-align:center}
@media(max-width:1200px){.wide{width:calc(100% - 72px)}.header-inner{gap:40px}.header-nav{gap:25px}.case-shell{grid-template-columns:176px minmax(0,1fr);gap:30px}.brand{font-size:19px}.intro-copy h1{font-size:32px}.case-intro{gap:22px}.quote-summary{gap:22px;padding:21px}.quote-facts{gap:15px}.quote-details{display:none}.day-panel-content{gap:24px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.day-heading h3{font-size:22px}.reception-grid{grid-template-columns:1fr;gap:30px}.service-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.itinerary-table tbody th,.itinerary-table tbody td,.itinerary-table thead th{padding-inline:11px}.pricing-columns{gap:27px}}
@media(max-width:1000px){.wide{width:calc(100% - 56px)}.case-shell{grid-template-columns:156px minmax(0,1fr);gap:25px}.header-inner{gap:32px}.header-nav{gap:21px;font-size:11px}.case-directory .overline{font-size:8px}.directory-heading h2{font-size:23px}.directory-lead{font-size:10px}.case-card strong{font-size:13px}.case-card small{font-size:10px}.case-intro{grid-template-columns:1fr}.intro-copy{padding:0}.intro-copy h1{font-size:34px}.intro-photo{aspect-ratio:2.2;max-height:255px}.quote-summary{gap:18px;padding:20px}.quote-facts{grid-template-columns:repeat(2,1fr);gap:9px 19px}.quote-facts>span:last-child{grid-column:1/-1}.quote-price{font-size:28px}.section-label p{display:none}.day-panel-content{grid-template-columns:minmax(0,1fr)}.day-media{justify-content:flex-start;max-width:430px;padding-top:0;gap:15px}.day-photo.is-portrait{max-width:200px}.day-media.is-pair .day-photo{max-width:none}.day-stops{gap:14px}.day-media.is-pair{max-width:480px}.day-heading h3{font-size:23px}.day-nav-button{flex-direction:column;align-items:center;gap:2px;padding:9px 3px}.day-nav-button span{font-size:9px}.pricing-columns{grid-template-columns:1fr;gap:27px}.table-arrangements li>span{font-size:11px}.table-arrangements li strong{font-size:12px}.table-stay>strong{font-size:11px}.itinerary-table thead th:nth-child(2){width:17%}.itinerary-table thead th:nth-child(3){width:48%}.itinerary-table thead th:nth-child(4){width:24%}.table-day-link strong{font-size:12px}.table-route{font-size:11px}}
@media(max-width:800px){.wide{width:calc(100% - 40px)}.header-inner{height:66px;gap:20px}.brand{font-size:17px;gap:9px}.brand-symbol{width:23px;height:24px;gap:2px}.brand-symbol i{width:6px}.brand-symbol i:nth-child(1){height:15px}.brand-symbol i:nth-child(2){height:24px}.brand-symbol i:nth-child(3){height:19px}.header-nav{display:none}.home-link{font-size:11px}.home-link span{margin-left:6px}.case-shell{display:block}.case-directory{position:fixed;z-index:40;inset:0 auto 0 0;width:min(320px,calc(100vw - 44px));height:100dvh;overflow-y:auto;padding:29px 24px;background:var(--paper);transform:translateX(-105%);transition:transform .25s;visibility:hidden}.is-directory-open .case-directory{transform:translateX(0);visibility:visible}.directory-close{display:grid;place-items:center;border:0;background:transparent;width:36px;height:36px;font-size:25px;color:#7c8ca1}.directory-lead{font-size:12px}.case-card strong{font-size:15px}.case-card small{font-size:11px}.directory-shade:not([hidden]){display:block;position:fixed;inset:0;z-index:30;background:#102a4359}.directory-toggle{display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:10px 0;font-size:12px;color:#647c9a}.directory-toggle svg{width:17px;height:17px}.case-toolbar{min-height:64px;gap:12px;margin-bottom:22px}.current-case-label{display:none}.style-switch{margin-left:auto}.style-switch button{padding:8px 11px;font-size:11px;gap:6px}.style-switch svg{width:15px;height:15px}.day-navigation{top:var(--hainan-sticky-height,0px)}.case-intro{grid-template-columns:1fr 1.05fr;gap:25px}.intro-photo{aspect-ratio:1.4}.intro-copy h1{font-size:31px}.quote-summary{gap:25px}.quote-facts{grid-template-columns:repeat(3,1fr);gap:20px}.quote-facts>span:last-child{grid-column:auto}.day-panel-content{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.day-nav-button{flex-direction:row;gap:7px;font-size:13px}.day-nav-button span{font-size:10px}.day-media{max-width:none}.day-photo.is-portrait{max-width:210px}.reception-grid{grid-template-columns:1fr}.pricing-columns{grid-template-columns:1.3fr 1fr}.table-arrangements li>span{font-size:12px}}
@media(max-width:600px){.wide{width:calc(100% - 36px)}.brand{font-size:16px}.home-link{font-size:10px}.case-toolbar{gap:8px;margin-bottom:18px}.directory-toggle{font-size:11px;gap:6px}.directory-toggle svg{width:16px}.style-switch{padding:3px;gap:2px}.style-switch button{padding:8px 9px;font-size:10px;gap:5px}.style-switch svg{width:14px;height:14px}.case-intro{display:flex;flex-direction:column;gap:20px;align-items:stretch}.intro-copy h1{font-size:29px;line-height:1.45;margin-top:10px}.intro-eyebrow{font-size:10px}.intro-subtitle{font-size:13px;margin-top:12px}.intro-tags{margin-top:12px;gap:13px}.intro-tags span{font-size:10px}.intro-daily-link{display:none}.intro-photo{width:100%;aspect-ratio:1.9;max-height:none}.intro-photo figcaption{font-size:9px;left:14px;bottom:11px}.quote-summary{display:grid;grid-template-columns:1fr;gap:13px;margin-top:20px;padding:18px 20px}.quote-main{display:flex;align-items:center;justify-content:space-between;gap:16px}.quote-main .overline{font-size:10px}.quote-price{font-size:28px}.quote-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quote-facts>span{font-size:9px;line-height:1.8}.quote-facts b{font-size:11px}.quote-facts>span:last-child{grid-column:auto}.route-overview{padding-top:29px;margin-bottom:31px}.section-label h2{font-size:21px}.route-overview .overline,.daily-heading .overline,.reception-heading .overline,.pricing-heading .overline{font-size:9px}.route-strip{margin-top:20px}.route-stop{padding-top:13px}.route-stop small{font-size:9px}.route-stop strong{font-size:13px}.daily-heading h2{font-size:24px}.daily-heading>p{font-size:10px}.day-navigation{padding:5px 0 10px;margin-bottom:23px}.day-nav-button{flex-direction:column;gap:2px;font-size:12px;padding:9px 2px}.day-nav-button span{font-size:9px}.day-nav-button:after{left:20%;right:20%}.day-panels{gap:43px}.day-heading{gap:13px;margin-bottom:15px;align-items:flex-start}.day-number{font-size:35px;margin-top:5px}.day-heading h3{font-size:20px;line-height:1.6;letter-spacing:-.4px;margin-top:5px}.day-route{font-size:10px;line-height:1.7}.day-panel-content{grid-template-columns:1fr;gap:18px}.day-lead{font-size:13px;line-height:1.95}.day-stops{margin-top:17px;gap:14px}.day-stops li{grid-template-columns:29px minmax(0,1fr);gap:10px}.stop-period{font-size:9px;line-height:2.5}.day-stops h4{font-size:13px}.day-stops p{font-size:12px;line-height:1.95}.day-facts{margin-top:17px;gap:8px}.day-fact{grid-template-columns:29px minmax(0,1fr);gap:10px;font-size:12px}.day-fact dt{font-size:9px}.day-fact small{font-size:10px}.day-note{font-size:10px;line-height:1.9;margin-top:12px}.day-media{justify-content:flex-start;max-width:100%;gap:12px}.day-photo{max-width:100%}.day-photo.is-portrait{max-width:100%}.day-photo.is-landscape{max-width:100%}.day-media.is-pair{gap:11px;max-width:100%}.day-media.is-pair .day-photo{max-width:none}.day-photo figcaption{font-size:9px;line-height:1.6;margin-top:6px}
.itinerary-table{display:block}.itinerary-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.itinerary-table tbody{display:grid;gap:31px}.itinerary-table .itinerary-row{display:grid;grid-template-columns:55px minmax(0,1fr);gap:14px 13px;padding:0 0 26px;border-bottom:1px solid #dce3e5}.itinerary-table tbody th{grid-column:1;grid-row:1;padding:0;border:0}.itinerary-table tbody td{padding:0;border:0;font-size:12px}.itinerary-table .table-route{grid-column:2;grid-row:1;align-self:center;font-size:13px;font-weight:550;color:#3d5c79}.itinerary-table .table-arrangements,.itinerary-table .table-stay{grid-column:1/-1}.table-day-link{line-height:1.65}.table-day-link>span{font-size:9px}.table-day-link strong{font-size:13px;margin-top:2px}.table-arrangements ol{gap:12px}.table-arrangements li strong{font-size:13px}.table-arrangements li>span{font-size:12px;line-height:1.95}.table-meal{font-size:11px;margin-top:13px}.table-stay>strong{font-size:12px;font-weight:500;color:#5d7993}.table-stay>strong:before{content:"住宿／返程　";font-size:10px;color:#8496a8}.table-stay>small{margin-top:3px;font-size:10px}
.reception{padding-top:39px}.reception-heading h2,.pricing-heading h2{font-size:23px}.reception-grid{gap:27px;margin-top:20px}.hotel-panel>h3,.service-panel>h3,.pricing-columns h3{font-size:13px;margin-bottom:16px}.hotel-list{gap:18px}.hotel-item{grid-template-columns:34px minmax(0,1fr) auto;gap:9px}.hotel-place strong{font-size:11px}.hotel-description h4{font-size:12px}.hotel-description p{font-size:10px}.hotel-rate strong{font-size:12px}.hotel-rate span{font-size:8px}.service-list{grid-template-columns:1fr;gap:15px}.service-item{display:grid;grid-template-columns:65px minmax(0,1fr);gap:12px}.service-item h4{font-size:11px;line-height:1.95}.service-item p{font-size:12px;margin-top:0}.pricing{padding-top:38px}.pricing-heading{display:block}.quote-total{font-size:13px;margin-top:9px;padding:0}.pricing-note{font-size:10px;line-height:1.95;margin-top:11px}.pricing-columns{grid-template-columns:1fr;gap:25px;margin-top:22px}.included-list{gap:12px}.included-list>div{grid-template-columns:65px minmax(0,1fr);gap:12px}.included-list dt{font-size:11px}.included-list dd,.excluded-list li{font-size:12px}.travel-notes{padding-top:32px}.travel-notes h2{font-size:17px}.travel-notes li{font-size:11px;line-height:1.95}.case-footer{font-size:9px;gap:12px;padding-top:25px;margin-top:15px}.case-footer a span{margin-left:3px}}
@media(max-width:360px){.wide{width:calc(100% - 30px)}.brand{font-size:14px}.brand-symbol{width:21px}.home-link{font-size:9px}.header-inner{gap:12px}.style-switch button{padding:8px 7px;font-size:9px}.style-switch svg{width:12px;height:12px}.directory-toggle{font-size:10px}.intro-copy h1{font-size:27px}.quote-summary{padding:16px}.quote-facts{gap:7px}.quote-facts b{font-size:10px}.quote-facts>span{font-size:8px}.day-heading h3{font-size:19px}.day-number{font-size:32px}.day-heading{gap:11px}.hotel-item{grid-template-columns:30px minmax(0,1fr) auto;gap:7px}.hotel-rate strong{font-size:11px}.hotel-description h4{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* The itinerary's picture gallery, table heading and phone reading preview. */
.intro-gallery{min-width:0}.intro-photo{aspect-ratio:1.45}.cover-surface{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;cursor:default}.cover-slides{display:block;position:absolute;inset:0;overflow:hidden}.cover-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1);transition:opacity .7s,transform .35s;pointer-events:none}.cover-slide.is-current{opacity:1;transform:scale(1)}.intro-photo:after{pointer-events:none}.intro-photo figcaption{pointer-events:none;bottom:16px;max-width:65%}.carousel-dots{display:flex;justify-content:center;gap:4px;padding-top:9px}.carousel-dots button{display:grid;place-items:center;width:27px;height:19px;padding:0;border:0;background:transparent}.carousel-dots span{display:block;width:5px;height:5px;border-radius:5px;background:#b9c5cf;transition:width .25s,background .25s}.carousel-dots button[aria-pressed=true] span{width:18px;background:#56769d}

.case-toolbar{justify-content:flex-start;gap:14px}.style-switch{margin-left:auto}.phone-toggle{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 0 10px 8px;border:0;background:transparent;color:#587394;font-size:11px;line-height:1.5;white-space:nowrap}.phone-toggle svg{width:17px;height:17px}.phone-toggle[aria-expanded=true]{color:#3158bc}.current-case-label{gap:9px}
.case-shell.has-phone-preview{grid-template-columns:150px minmax(0,1fr) 224px;gap:28px}.has-phone-preview .directory-heading h2{font-size:23px}.has-phone-preview .directory-lead{font-size:10px}.has-phone-preview .case-card strong{font-size:13px}.has-phone-preview .case-card small{font-size:10px}.has-phone-preview .case-intro{gap:23px}.has-phone-preview .intro-copy h1{font-size:31px}.has-phone-preview .intro-subtitle{font-size:12px}.has-phone-preview .intro-tags{gap:8px}.has-phone-preview .intro-tags span{font-size:10px}.has-phone-preview .quote-summary{padding:20px;gap:20px}.has-phone-preview .quote-facts{gap:16px}.has-phone-preview .quote-details{display:none}.has-phone-preview .day-panel-content{grid-template-columns:1.25fr 1fr;gap:22px}.has-phone-preview .day-media{gap:9px}.has-phone-preview .reception-grid{grid-template-columns:1fr;gap:29px}.has-phone-preview .service-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.has-phone-preview .pricing-columns{gap:26px}.has-phone-preview .case-toolbar{gap:11px}.has-phone-preview .current-case-label{font-size:10px}.has-phone-preview .style-switch button{font-size:11px;padding:8px 10px}.has-phone-preview .day-nav-button{gap:5px}.has-phone-preview .day-heading h3{font-size:21px}
.phone-preview{position:sticky;top:25px;align-self:start;padding-top:29px;min-width:0}.phone-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 5px 15px}.phone-preview-heading .overline{font-size:8px;letter-spacing:.5px}.phone-preview-heading h2{font-size:16px;line-height:1.6;font-weight:550;letter-spacing:-.3px;margin-top:3px}.phone-close{width:31px;height:31px;padding:0;border:0;background:transparent;color:#8b9bad;font-size:24px;line-height:1}.phone-frame{position:relative;width:100%;height:min(480px,calc(100dvh - 200px));min-height:300px;border:2px solid #71818f;border-radius:26px;padding:5px;background:#cdd5dc;box-shadow:0 8px 18px #102a430b}.phone-speaker{display:none}.phone-screen{width:100%;height:100%;overflow:hidden;border-radius:19px;background:var(--paper)}.phone-screen iframe{display:block;border:0;transform-origin:top left;background:var(--paper)}.phone-preview-day{font-size:10px;line-height:1.8;color:#7c8fa3;text-align:center;margin:13px 0 0}.phone-shade{display:none}
.quote-breakdown{display:grid;gap:0;margin-top:24px;max-width:760px}.quote-cost-row{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:10px 0}.quote-cost-row>div{display:flex;gap:22px;align-items:baseline}.quote-cost-row strong{font-size:12px;font-weight:550;min-width:86px}.quote-cost-row span{font-size:11px;color:#7d8da0}.quote-cost-row>b{font-size:13px;font-weight:550;color:#476b91;white-space:nowrap}.quote-cost-total{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:16px 0 0;margin-top:8px;border-top:1px solid #dce3e6;font-size:13px;color:#476b91}.quote-cost-total small{display:block;font-size:10px;line-height:1.8;font-weight:400;color:#7d8da0;margin-top:3px}.quote-cost-total strong{text-align:right;font-size:19px;font-weight:600}.quote-cost-total strong small{font-size:11px}
body[data-style=compact] .case-intro{display:block;padding:4px 0 0}.compact-caption{display:none}body[data-style=compact] .intro-gallery,body[data-style=compact] .intro-daily-link{display:none}body[data-style=compact] .intro-copy{padding:0}body[data-style=compact] .intro-copy h1{font-size:31px;margin-top:7px;max-width:none}body[data-style=compact] .intro-subtitle{margin-top:10px;font-size:12px;color:#6e839b}body[data-style=compact] .intro-tags{margin-top:10px}body[data-style=compact] .quote-summary{background:transparent;padding:17px 0;margin-top:10px;gap:30px}body[data-style=compact] .quote-main .overline{font-size:9px}body[data-style=compact] .quote-price{font-size:25px}body[data-style=compact] .daily-heading{display:none}body[data-style=compact] .daily{margin-top:12px}body[data-style=compact] .day-navigation{margin-bottom:13px}
.is-device-preview .site-header,.is-device-preview .case-directory,.is-device-preview .directory-shade,.is-device-preview .case-toolbar,.is-device-preview .case-footer,.is-device-preview .phone-preview,.is-device-preview .phone-shade{display:none!important}.is-device-preview .case-shell{display:block;width:calc(100% - 32px);padding-top:22px}.is-device-preview .case-intro{display:flex;flex-direction:column;gap:16px}.is-device-preview .intro-copy h1{font-size:26px}.is-device-preview .intro-eyebrow{font-size:10px}.is-device-preview .intro-subtitle{font-size:12px}.is-device-preview .intro-tags{font-size:10px}.is-device-preview .intro-daily-link,.is-device-preview .carousel-dots{display:none}.is-device-preview .intro-photo{aspect-ratio:1.8}.is-device-preview .quote-summary{padding:16px}.is-device-preview .quote-price{font-size:26px}.is-device-preview .day-navigation{top:0}.is-device-preview .travel-notes{padding-bottom:25px}
@media(max-width:1300px){.case-shell.has-phone-preview{grid-template-columns:132px minmax(0,1fr) 214px;gap:22px}.has-phone-preview .intro-copy h1{font-size:28px}.has-phone-preview .quote-summary{gap:16px;padding:18px}.has-phone-preview .quote-facts{gap:9px}.has-phone-preview .quote-facts b{font-size:11px}.has-phone-preview .quote-facts>span{font-size:9px}.has-phone-preview .day-panel-content{grid-template-columns:1fr}.has-phone-preview .day-media{max-width:430px;justify-content:flex-start}.has-phone-preview .service-list{grid-template-columns:1fr}.has-phone-preview .service-item{display:grid;grid-template-columns:75px minmax(0,1fr);gap:12px}.has-phone-preview .pricing-columns{grid-template-columns:1fr}.has-phone-preview .day-nav-button{flex-direction:column;align-items:center;gap:2px}}
@media(max-width:1100px){.case-shell.has-phone-preview{grid-template-columns:156px minmax(0,1fr);gap:25px}.phone-preview{position:fixed;z-index:45;right:22px;top:50%;transform:translateY(-50%);width:246px;padding:17px 14px;background:var(--paper);border-radius:12px;box-shadow:0 20px 70px #102a4333}.phone-frame{height:min(460px,calc(100dvh - 165px));min-height:260px}.phone-preview-heading{padding-bottom:12px}.phone-preview-heading h2{font-size:17px}.phone-preview-day{margin-top:10px}.phone-shade:not([hidden]){display:block;position:fixed;inset:0;z-index:35;background:#102a4366;backdrop-filter:blur(3px)}.phone-modal-open{overflow:hidden}.has-phone-preview .case-intro{grid-template-columns:1fr}.has-phone-preview .intro-copy h1{font-size:34px}.has-phone-preview .quote-summary{gap:18px;padding:20px}.has-phone-preview .quote-facts{grid-template-columns:repeat(2,1fr);gap:9px 19px}.has-phone-preview .quote-facts>span:last-child{grid-column:1/-1}.has-phone-preview .quote-facts b{font-size:12px}.has-phone-preview .quote-facts>span{font-size:10px}}
@media(max-width:800px){.phone-toggle{display:none}.case-shell.has-phone-preview{display:block}.phone-preview{display:none!important}.phone-shade{display:none!important}.has-phone-preview .case-intro{grid-template-columns:1fr 1.05fr}.case-toolbar{gap:10px}.intro-gallery{width:100%}.intro-photo{aspect-ratio:1.45}.quote-cost-row>div{gap:17px}.quote-cost-row strong{min-width:75px}}
@media(max-width:600px){.intro-photo{aspect-ratio:1.8}.intro-photo figcaption{font-size:9px;bottom:14px}.carousel-dots{padding-top:5px}body[data-style=compact] .intro-copy h1{font-size:27px;line-height:1.5}body[data-style=compact] .intro-subtitle{font-size:11px}body[data-style=compact] .quote-summary{gap:12px;padding:15px 0 8px;margin-top:5px}body[data-style=compact] .quote-main{justify-content:flex-start;gap:15px}body[data-style=compact] .quote-price{font-size:26px}body[data-style=compact] .daily{margin-top:8px}body[data-style=compact] .day-navigation{margin-bottom:20px}.quote-breakdown{margin-top:19px}.quote-cost-row{padding:10px 0;align-items:center}.quote-cost-row>div{display:block}.quote-cost-row strong{font-size:12px}.quote-cost-row span{display:block;font-size:10px;line-height:1.9;margin-top:2px}.quote-cost-row>b{font-size:12px}.quote-cost-total{font-size:12px}.quote-cost-total strong{font-size:18px}.quote-cost-total small{font-size:9px}.quote-cost-total strong small{font-size:10px}}

.photo-surface{position:relative;display:block;overflow:hidden;border-radius:3px;cursor:default;transition:box-shadow .35s}.photo-surface img{transform:none;filter:none;transition:filter .35s}.photo-surface:after{content:"";position:absolute;top:-5%;bottom:-5%;left:-70%;width:60%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12) 28%,rgba(255,255,255,.38) 50%,rgba(255,255,255,.12) 72%,transparent);transform:translateX(0) skewX(-16deg);opacity:0}.day-photo figcaption{transition:color .35s}
@keyframes itinerary-photo-light{0%{transform:translateX(0) skewX(-16deg);opacity:0}15%{opacity:.75}80%{opacity:.75}100%{transform:translateX(300%) skewX(-16deg);opacity:0}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.cover-surface:hover .cover-slide.is-current{transform:scale(1.025)}.photo-surface:hover img{filter:brightness(1.055) saturate(1.08) contrast(1.025)}.photo-surface:hover{box-shadow:0 10px 26px #142a4329}.photo-surface:hover:after{animation:itinerary-photo-light 1s cubic-bezier(.2,.65,.3,1) both}.day-photo:hover figcaption{color:#315b87}}


.current-case-label ol{display:flex;align-items:center;gap:8px;min-width:0;padding:0;margin:0;list-style:none;white-space:nowrap}.current-case-label li{display:flex;align-items:center;gap:8px;flex:none;min-width:0}.current-case-label li:last-child{flex:0 1 auto}.breadcrumb-separator{color:#b4bdc8;flex:none}.current-case-label [aria-current=page]{font-weight:500;color:#52677f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.current-case-label a:hover{color:var(--blue)}

/* The gallery introduces the collection; this directory supports reading. */
.directory-all-link{display:block;margin-top:9px;padding:12px 0;border-top:1px solid var(--line);font-size:11px;color:var(--blue)}

/* A desktop-scale view of the actual itinerary in the collection thumbnail. */
.is-collection-thumbnail{overflow:hidden}.is-collection-thumbnail .case-shell{width:calc(100% - 80px);padding-top:35px}.is-collection-thumbnail .case-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:center}.is-collection-thumbnail .intro-gallery{width:100%}.is-collection-thumbnail .intro-copy h1{font-size:34px}.is-collection-thumbnail .intro-photo{aspect-ratio:1.45}.is-collection-thumbnail .intro-subtitle{font-size:14px}

@media(min-width:801px){.case-directory{max-height:calc(100dvh - 36px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:5px}}

/* Reading tools follow their measured height; itinerary themes keep their layout. */
body.ur-hainan .case-content .ur-sections{top:var(--hainan-toolbar-height,0px)!important}
body.ur-hainan .case-content #day-navigation{top:var(--hainan-sticky-height,0px)!important}
