/* Approved service architecture, using the existing RJJ public design language. */
.home-main{display:flex;flex-direction:column;gap:0;padding-top:22px}.home-title{padding:18px 20px 34px}.home-title .chinese-signature{margin-bottom:0}.home-services{width:min(900px,100%);margin:0 auto 45px}.service-row{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding:26px 4px;text-decoration:none}.service-row h2{font-size:30px;font-weight:600;letter-spacing:-.035em}.service-row p{font-size:15px;color:var(--muted);margin:9px 0 0}.service-row>.arrow{width:24px;flex:none;color:var(--green)}.service-row:hover h2{color:var(--green)}.home-landscape{max-height:430px}.home-landscape img{aspect-ratio:3.2}.home-footer{min-height:65px}
#services-view .site-header{max-width:1280px}.service-detail{max-width:1136px;margin:auto;padding:30px 32px 70px}.service-back{display:inline-block;color:var(--muted);font-size:14px;margin-bottom:38px;padding-block:8px}.service-detail>.eyebrow,.cq-intro .eyebrow{margin-bottom:20px}.service-detail h1{font-size:clamp(42px,5.5vw,72px);line-height:1.06;letter-spacing:-.05em}.service-deck{font-size:21px;color:var(--muted);line-height:1.5;max-width:650px;margin:24px 0 38px}.service-detail-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;margin-top:48px;align-items:start}.service-detail h2{font-size:28px;line-height:1.18;margin-bottom:20px}.service-features{padding:0;list-style:none;margin:0}.service-features li{border-bottom:1px solid var(--line);padding:17px 0;font-size:16px;line-height:1.6}.service-price-panel{background:var(--soft);border-radius:24px;padding:32px}.service-price-panel>strong{font-size:38px;letter-spacing:-.04em}.service-price-panel>strong small{font-size:17px;letter-spacing:0;color:var(--muted);font-weight:400}.service-price-panel p{font-size:16px;margin:10px 0}.service-price-panel>.continue{width:100%;margin:24px 0 18px}.service-price-panel>small{font-size:13px;line-height:1.65;color:var(--muted);display:block}.service-how{margin-top:70px;max-width:720px}.service-how p{font-size:17px;color:var(--muted);line-height:1.7}.service-how a{display:inline-block;margin-top:22px;color:var(--green);font-size:15px}.service-footer{display:flex;justify-content:space-between;gap:24px;max-width:1136px;margin:auto;padding:25px 32px 40px;border-top:1px solid var(--line);font-size:13px}.cq-intro{display:grid;grid-template-columns:1fr .9fr;gap:64px;align-items:center}.cq-intro figure{margin:0}.cq-intro img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:24px;height:auto;display:block}.cq-intro .service-deck{font-size:20px;margin-bottom:24px}.service-meta{font-size:14px;color:var(--muted);margin-bottom:24px}.cq-intro .continue{width:auto}.meal-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:15px}.meal-price-row strong{font-size:22px;font-weight:500}.meal-price-row small{font-size:12px;font-weight:400;color:var(--muted)}
.destination-selection-store{display:none}.region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:12px}.region-tile{display:flex;align-items:flex-start;gap:10px;justify-content:space-between;width:100%;padding:18px 16px;min-height:138px;border:1px solid var(--line);border-radius:16px;background:var(--soft);text-align:left}.region-tile>span:first-child{flex:1;min-width:0}.region-tile strong{display:block;font-size:16px;font-weight:500;line-height:1.3;min-height:2.6em;letter-spacing:-.02em}.region-tile small{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:9px}.region-chevron{align-self:center;color:var(--green);font-size:22px;flex:none}.region-tile.has-choice{border-color:var(--green);background:var(--selected)}.place-search{margin-bottom:20px}.region-back{font-size:14px;color:var(--green);padding:8px 0;margin:0 0 20px}.region-any{display:flex;align-items:center;gap:14px;border-radius:15px;background:var(--selected);padding:18px;margin-bottom:15px;font-size:14px}.region-any input,.place-option input{width:19px;height:19px;flex:none}.place-list{display:grid;gap:10px}.place-option{display:flex;align-items:center;gap:14px;background:var(--soft);border:1px solid transparent;border-radius:15px;padding:17px}.place-option>span{min-width:0;flex:1}.place-option:has(:checked){border-color:var(--green);background:var(--selected)}.province-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px}.province-heading strong{font-size:16px;font-weight:500}.place-option small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:5px}.chosen-places{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.chosen-places:empty{display:none}.chosen-places button{background:var(--selected);color:var(--green);border-radius:999px;font-size:13px;padding:10px 13px;min-height:44px}.chosen-places button span{margin-left:8px;font-size:17px}.region-done{display:flex;margin:24px 0 0 auto;width:auto;min-width:150px}#journey-form.region-open>.form-actions,#journey-form.region-open [data-step="1"]>.plain-choice,#journey-form.region-open [data-step="1"]>.field-section,#journey-form.region-open #other-destination{display:none}.region-open .destination-heading{display:none}
@font-face{font-family:RjjProvinceHand;src:url('/experience/assets/province-hand.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}.province-hand{font:400 23px/1.3 RjjProvinceHand,'Kaiti TC',serif;letter-spacing:.06em;color:var(--green);white-space:nowrap}
.planning-fee-live{margin:22px 0;padding:20px;background:var(--soft);border-radius:16px;font-size:15px}.planning-fee-live strong,.planning-fee-live span,.planning-fee-live small{display:block}.planning-fee-live span{font-size:13px;color:var(--muted);margin-top:7px}.planning-fee-live small{font-size:12px;color:var(--muted);margin-top:9px}.wechat-hint{font-size:12px!important;line-height:1.6;color:var(--muted);font-weight:400}.wechat-help{font-size:12px;color:var(--muted);margin:-6px 0 16px}.wechat-help summary{color:var(--green);list-style:none;min-height:44px;display:flex;align-items:center;gap:8px}.wechat-help summary::-webkit-details-marker{display:none}.wechat-help summary:before{content:'+';font-size:18px}.wechat-help[open] summary:before{content:'−'}.wechat-help p{margin:0 0 10px;line-height:1.6}.recommended{color:var(--green)!important}
#services-view .form-shell{min-height:100svh}.meal-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.meal-choices label{position:relative;min-width:0}.meal-choices input{position:absolute;opacity:0;width:1px;height:1px}.meal-choices label>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:116px;background:var(--soft);border:1px solid var(--line);border-radius:17px;text-align:center;padding:16px 6px}.meal-choices strong{font-size:17px;font-weight:500}.meal-choices span>span{font-size:16px;color:var(--muted)}.meal-choices small{font-size:13px;color:var(--muted)}.meal-choices label:has(:checked)>span{background:var(--selected);border-color:var(--green);color:var(--green)}.meal-choices label:has(:focus-visible)>span{outline:3px solid #458b77;outline-offset:4px}.cq-form-shell .counter-row{margin-top:28px}.cq-estimate{font-size:16px;color:var(--green);margin-top:15px}.cq-summary{padding:22px;background:var(--soft);border-radius:20px;margin-bottom:28px}.cq-summary>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:10px 0;font-size:14px}.cq-summary span{color:var(--muted)}.cq-summary strong{font-weight:500;text-align:right}.cq-summary a{font-size:13px;display:inline-block;margin-top:14px;color:var(--green)}
@media(max-width:900px){.desktop-navigation{gap:18px;font-size:11px}.service-detail-grid{gap:35px}.cq-intro{gap:32px}}
@media(max-width:700px){.home-main{padding-top:5px}.home-title{padding:16px 0 28px}.home-title h1{font-size:41px}.home-title .chinese-signature{margin-top:18px}.home-services{margin-bottom:30px}.service-row{padding:23px 0}.service-row h2{font-size:25px}.service-row p{font-size:14px}.home-landscape img{aspect-ratio:1.8}.service-detail{padding:18px 22px 50px}.service-back{margin-bottom:28px}.service-detail h1{font-size:42px}.service-deck{font-size:18px}.service-detail-grid,.cq-intro{grid-template-columns:1fr;gap:30px}.service-price-panel{padding:25px}.service-detail h2{font-size:25px}.cq-intro img{aspect-ratio:1;max-height:440px}.service-detail-grid{margin-top:35px}.service-how{margin-top:40px}.service-footer{padding-inline:22px}.region-tile{padding:16px 12px;min-height:140px}.region-tile strong{font-size:15px}.region-tile small{font-size:11px}.region-chevron{font-size:18px}.province-hand{font-size:22px}}
@media(max-width:360px){.region-tile strong{min-height:3.9em}.region-tile{gap:5px}.meal-choices{gap:7px}.meal-choices strong{font-size:15px}.meal-choices span>span{font-size:15px}.service-row h2{font-size:23px}}
/* Product essentials come before the deeper reading. */
.service-intro-action{margin:0 0 36px}.service-price-brief{font-size:16px;line-height:1.7;margin:18px 0 8px;color:var(--ink)}.service-price-brief strong{font-weight:600;white-space:nowrap}.service-price-brief small{display:block;font-size:13px;color:var(--muted);margin-top:5px}.service-price-extra,.service-inclusion-note{font-size:13px;line-height:1.6;color:var(--muted);max-width:470px;margin:8px 0 18px}.service-inclusion-note{margin:14px 0 0}.service-detail .continue{position:static;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-width:0;max-width:100%;padding:15px 23px;min-height:48px;font-size:15px;text-align:left;line-height:1.4}.service-detail .continue>.arrow{position:static;transform:none;width:22px;height:22px;flex:0 0 22px;margin:0}.cq-intro .service-deck{margin-bottom:16px}.service-price-panel>.continue{display:flex}.budget-back{display:block;min-height:44px;padding:8px 0;margin:0 0 10px;text-align:left;color:var(--green);font-size:14px}.budget-back[hidden],.budget-tiles[hidden],.budget-custom-choice[hidden]{display:none!important}[data-privacy-choice]{display:block;min-height:44px;padding:12px 0;font-size:13px;color:var(--muted);background:transparent}[data-privacy-choice][hidden]{display:none}
@media(max-width:700px){#services-view .site-header{height:76px}.service-detail{padding-top:10px}.service-back{margin-bottom:18px;padding-block:8px}.service-detail>.eyebrow,.cq-intro .eyebrow{margin-bottom:14px}.service-detail h1{font-size:36px;line-height:1.08}.service-deck,.cq-intro .service-deck{font-size:16px;line-height:1.55;margin:18px 0}.service-intro-action{margin-bottom:24px}.service-detail-grid{margin-top:28px;gap:28px}.service-price-panel{padding:22px;border-radius:20px}.service-price-panel>strong{font-size:32px}.service-how h2{font-size:23px}.service-how p{font-size:15px}.service-price-brief{font-size:15px}.service-detail .continue{font-size:14px}.home-services{margin-bottom:20px}.home-landscape img{aspect-ratio:1.8}}

.service-detail h1[tabindex="-1"]:focus{outline:none}
/* Destination discovery: compact results, no nested scrolling or remote lookup. */
#destination-picker .place-search{margin-bottom:6px} .place-search-field{display:block;width:100%}
.place-search-help{font-size:13px;color:var(--muted);margin:0 0 18px;line-height:1.5}
.destination-status{font-size:12px;color:var(--muted);line-height:1.5;margin:0 0 12px}.destination-status:empty{display:none}
#destination-options{display:grid;gap:0;border-top:1px solid var(--line)}
.search-place{display:flex;align-items:center;gap:14px;width:100%;padding:15px 4px;text-align:left;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink)}
.search-place-copy{display:block;min-width:0;flex:1}.search-place strong{display:block;font-size:16px;line-height:1.35;font-weight:500;overflow-wrap:anywhere}
.search-place-zh{display:block;font-size:14px;color:var(--green);margin-top:3px;line-height:1.4}
.search-place small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:5px;overflow-wrap:anywhere}
.search-place-mark{font-size:22px;flex:none;color:var(--green);width:25px;text-align:center}
.search-place.is-selected,.search-place.is-active{background:var(--selected)}.search-place:focus-visible,.manual-place:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.manual-place{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;width:100%;padding:14px 4px;color:var(--green);text-align:left;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.manual-place>span{font-size:20px;flex:none}
.place-attribution{display:block;font-size:10px;color:var(--muted);line-height:1.5;margin:4px 0 18px}.place-attribution a{text-decoration:underline;text-underline-offset:2px}
.place-retry{font-size:13px;color:var(--green);padding:12px 4px;text-decoration:underline}
.chosen-places button{display:flex;align-items:center;gap:9px;max-width:100%;text-align:left}.chosen-places button .chosen-place-name{font-size:13px;margin:0;min-width:0;overflow-wrap:anywhere}.chosen-places button>span:last-child{margin:0;flex:none}
@media(max-width:600px){.search-place{padding:13px 3px}.search-place strong{font-size:15px}.search-place-zh{font-size:13px}}

/* Service and inspiration have distinct groups, with one shared title style. */
.home-services{margin-bottom:0;border-bottom:1px solid var(--line)}
.home-inspiration{width:min(900px,100%);margin:42px auto 42px}
.home-inspiration>.eyebrow{font-size:10px;letter-spacing:.18em;color:var(--muted);margin:0 4px 4px}
.home-inspiration .service-row{border:0;padding:16px 4px}
/* One price and action beside the introduction, followed by the details. */
.plan-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr);gap:64px;align-items:center}
.plan-intro .eyebrow{margin-bottom:20px}
.plan-intro h1{font-size:clamp(44px,4.5vw,62px);max-width:620px;text-wrap:balance}
.plan-intro .service-deck{font-size:19px;max-width:520px;margin-bottom:0}
.plan-intro .service-price-panel{width:100%;max-width:400px;justify-self:end}
.plan-intro .service-price-panel .plan-extra{font-size:14px;color:var(--muted)}
.plan-details{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr);gap:64px;margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}
.plan-details .service-how{margin-top:0;max-width:400px;justify-self:end}
.plan-details h2{font-size:25px}
.plan-details .service-how p{font-size:16px}
@media(max-width:900px){.plan-intro,.plan-details{gap:32px}.plan-intro h1{font-size:46px}}
@media(max-width:700px){.home-inspiration{margin:30px auto 24px}.home-inspiration>.eyebrow{margin-left:0}.home-inspiration .service-row{padding:14px 0}.home-inspiration .service-row p{max-width:260px;line-height:1.5}.plan-intro,.plan-details{grid-template-columns:minmax(0,1fr);gap:28px}.plan-intro h1{font-size:36px;max-width:100%;text-wrap:initial}.plan-intro .eyebrow{margin-bottom:14px}.plan-intro .service-deck{font-size:16px;margin:18px 0 0}.plan-intro .service-price-panel{max-width:none}.plan-details{margin-top:36px;padding-top:30px;gap:32px}.plan-details h2{font-size:23px}.plan-details .service-how{max-width:none;justify-self:stretch}.plan-details .service-how p{font-size:15px}}

.cq-intro figure[data-cq-hero]{overflow:hidden;border-radius:24px}.cq-intro [data-cq-hero] img{border-radius:0}
