:root{--red:#8d1d2c;--red-dark:#64111d;--jade:#163e36;--ink:#201b18;--muted:#746b65;--cream:#f8f4ed;--paper:#fffdfa;--line:#e8dfd5;--shadow:0 16px 45px rgba(52,26,21,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Noto Serif SC","Songti SC","PingFang SC",serif;padding-bottom:78px}.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:rgba(255,253,250,.92);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(141,29,44,.08)}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font-size:19px;font-weight:700}.seal{display:grid;place-items:center;width:33px;height:33px;background:var(--red);color:#fff;border-radius:50% 50% 47% 53%;font-size:18px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.25)}button{font:inherit}.orders-button{border:0;background:#f2e7e6;color:var(--red-dark);border-radius:999px;padding:9px 13px;font-size:14px}.orders-button span{display:inline-grid;place-items:center;min-width:19px;height:19px;border-radius:10px;background:var(--red);color:#fff;margin-left:4px;font-size:12px}main{max-width:1080px;margin:auto}.hero{height:430px;position:relative;overflow:hidden;background:#4a352d}.hero img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,16,15,.78) 0%,rgba(38,16,15,.3) 46%,rgba(38,16,15,.05) 75%),linear-gradient(0deg,rgba(26,12,10,.52),transparent 55%)}.hero-copy{position:absolute;left:clamp(22px,6vw,70px);bottom:48px;color:#fff;max-width:500px}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:13px;font-weight:700;margin:0 0 8px;color:#b8965a}.hero h1{font-size:clamp(38px,7vw,68px);line-height:1.1;margin:0 0 16px;letter-spacing:-.04em}.hero-copy>p:last-child{font-family:"PingFang SC",sans-serif;font-size:17px;line-height:1.65;margin:0;opacity:.92}.city-section,.experiences,.how-it-works{padding:32px 20px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:18px}.section-heading h2,.how-it-works h2{font-size:27px;margin:0;letter-spacing:-.03em}.section-heading>span{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:14px}.city-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.city-tab{padding:16px 8px;border:1px solid var(--line);background:var(--paper);border-radius:15px;color:var(--ink);font-size:18px;font-weight:700;cursor:pointer;transition:.2s}.city-tab small{display:block;font-family:"PingFang SC",sans-serif;font-weight:400;color:var(--muted);font-size:12px;margin-top:5px}.city-tab.active{background:var(--red);color:#fff;border-color:var(--red);transform:translateY(-2px);box-shadow:0 9px 22px rgba(141,29,44,.22)}.city-tab.active small{color:#ead7d7}.text-button{border:0;background:none;color:var(--red);font-size:14px}.experience-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.experience-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 5px 20px rgba(52,26,21,.06);display:flex;min-height:185px}.card-art{width:42%;display:flex;align-items:flex-end;padding:15px;color:#fff;position:relative;background-size:cover}.card-art::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(24,15,12,.64),transparent 70%)}.card-art span{position:relative;z-index:1;font-size:13px;font-family:"PingFang SC",sans-serif}.art-ride{background:linear-gradient(135deg,#6a1221,#c75555)}.art-photo{background:linear-gradient(135deg,#264a3e,#77a68a)}.art-help{background:linear-gradient(135deg,#243f5d,#7291ad)}.art-wash{background:linear-gradient(135deg,#614329,#c49a65)}.card-art .art-symbol{font-size:48px;position:absolute;right:12px;top:12px;opacity:.32}.card-body{padding:17px;flex:1;display:flex;flex-direction:column;align-items:flex-start}.card-body h3{font-size:19px;margin:0 0 7px}.card-body p{font-family:"PingFang SC",sans-serif;font-size:13px;color:var(--muted);line-height:1.5;margin:0 0 15px}.card-meta{font-family:"PingFang SC",sans-serif;font-size:13px;color:var(--jade);margin-top:auto}.card-price{font-size:18px;font-weight:700;margin-top:7px}.book-button{width:100%;margin-top:12px;border:0;border-radius:11px;background:#f1e5e4;color:var(--red-dark);font-weight:700;padding:10px;cursor:pointer}.how-it-works{margin-top:20px}.how-it-works ol{list-style:none;padding:0;margin:20px 0;background:var(--paper);border-radius:20px;border:1px solid var(--line)}.how-it-works li{display:flex;gap:14px;padding:18px;border-bottom:1px solid var(--line)}.how-it-works li:last-child{border:0}.how-it-works li>span{display:grid;place-items:center;flex:0 0 32px;height:32px;background:var(--jade);color:#fff;border-radius:50%;font-family:sans-serif}.how-it-works strong{font-size:16px}.how-it-works p,.trust-card p{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:14px;line-height:1.55;margin:5px 0 0}.trust-card{margin:28px 20px 35px;background:var(--jade);color:#fff;border-radius:20px;padding:20px;display:flex;gap:14px}.trust-card p{color:#d3e0dc}.trust-icon{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:50%;background:#d8ad67;color:var(--jade);font-family:sans-serif;font-weight:bold}.bottom-nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,1080px);height:70px;background:rgba(255,253,250,.96);backdrop-filter:blur(16px);z-index:30;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.bottom-nav a,.bottom-nav button{border:0;background:transparent;text-decoration:none;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-family:"PingFang SC",sans-serif;font-size:12px}.bottom-nav span{font-size:20px}.bottom-nav .active{color:var(--red)}dialog{border:0;padding:0;background:transparent}dialog::backdrop{background:rgba(29,20,18,.58);backdrop-filter:blur(3px)}.sheet{width:min(100%,560px);margin:auto auto 0;border-radius:25px 25px 0 0;background:var(--paper);color:var(--ink);max-height:90vh}.sheet form{padding:12px 22px 28px;position:relative}.sheet-handle{width:44px;height:5px;border-radius:3px;background:#d6cbc2;margin:0 auto 18px}.close-button{position:absolute;right:18px;top:16px;border:0;background:#eee6df;width:34px;height:34px;border-radius:50%;font-size:24px;color:var(--muted)}.sheet h2{font-size:27px;margin:0 0 16px}.price-line{display:flex;justify-content:space-between;padding:9px 0;font-family:"PingFang SC",sans-serif}.price-line.accent{color:var(--red);border-top:1px solid var(--line)}.small-note{font-family:"PingFang SC",sans-serif;font-size:13px;line-height:1.55;color:var(--muted);background:var(--cream);padding:12px;border-radius:10px;margin:4px 0 16px}.sheet label{font-family:"PingFang SC",sans-serif;display:block;font-size:14px;margin-top:13px}.sheet input,.sheet select{display:block;width:100%;margin-top:6px;border:1px solid #d8cec5;background:#fff;border-radius:11px;padding:13px;font-size:16px;color:var(--ink)}.sheet label.checkbox{display:flex;align-items:center;gap:8px;margin:17px 0}.sheet .checkbox input{display:inline;width:18px;height:18px;margin:0}.primary-button{width:100%;border:0;border-radius:13px;background:var(--red);color:#fff;padding:15px;font-weight:700;font-size:16px}.rules-button{width:100%;border:0;background:none;color:var(--muted);padding:13px}.message-dialog{width:min(calc(100% - 36px),400px);background:var(--paper);border-radius:22px;text-align:center;color:var(--ink)}.message-dialog form{padding:30px}.success-mark{margin:0 auto 14px;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#e2eee8;color:var(--jade);font-size:27px}.message-dialog h2{margin:0 0 10px}.message-dialog p{font-family:"PingFang SC",sans-serif;color:var(--muted);line-height:1.6;margin:0 0 22px}
@media(max-width:680px){.hero{height:375px}.hero img{object-position:59% center}.hero-shade{background:linear-gradient(0deg,rgba(32,12,13,.83),transparent 78%)}.hero-copy{left:20px;right:20px;bottom:28px}.hero h1{font-size:40px}.hero-copy>p:last-child{font-size:15px}.experience-grid{grid-template-columns:1fr}.experience-card{min-height:165px}.card-art{width:36%}.section-heading h2,.how-it-works h2{font-size:24px}}@media(min-width:900px){body{padding-bottom:0}.bottom-nav{display:none}.topbar{padding-inline:36px}.hero{border-radius:0 0 28px 28px}.city-section,.experiences,.how-it-works{padding-inline:36px}.trust-card{margin-inline:36px}.experience-grid{grid-template-columns:repeat(2,1fr)}}
.art-transfer{background:linear-gradient(135deg,#353657,#8d83b8)}
.art-translate{background:linear-gradient(135deg,#243f5d,#7291ad)}.art-special{background:linear-gradient(135deg,#58462f,#a88961)}
.experience-grid{grid-template-columns:1fr;max-width:720px}.experience-card{min-height:190px}
.group-title{display:flex;align-items:center;justify-content:space-between;margin:4px 2px 2px;padding-top:4px}.group-title b{font-size:17px}.group-title span{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:13px}.waiting-title{margin-top:18px;padding-top:20px;border-top:1px solid var(--line)}.status-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px}.status-row h3{margin-bottom:7px}.status{font-family:"PingFang SC",sans-serif;font-size:12px;font-style:normal;border-radius:999px;padding:4px 8px;white-space:nowrap}.status.open{background:#e1eee8;color:var(--jade)}.status.waiting{background:#eee8df;color:#776b5c}.waiting-card{box-shadow:none;opacity:.78}.waiting-card .card-art{filter:saturate(.55)}.book-button:disabled{background:#ece7df;color:#857b70;cursor:not-allowed}
.person-note{max-width:720px;margin:-2px 0 16px;padding:15px 16px;background:#f1e6e4;border-left:4px solid var(--red);border-radius:4px 14px 14px 4px}.person-note span{display:block;color:var(--red-dark);font-size:14px;font-weight:700;margin-bottom:5px}.person-note p{margin:0;color:#655b55;font-family:"PingFang SC",sans-serif;font-size:14px;line-height:1.65}
.payment-sheet{overflow:auto}.payment-wrap{padding:12px 22px 28px;position:relative}.payment-wrap h2{font-size:27px;margin:0 0 14px}.order-summary{background:var(--cream);border-radius:13px;padding:13px 15px;font-family:"PingFang SC",sans-serif;font-size:14px;line-height:1.8}.order-summary strong{color:var(--red)}.pay-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:16px 0 12px}.pay-tab{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 3px;color:var(--muted);font-size:13px}.pay-tab.active{background:var(--jade);border-color:var(--jade);color:#fff}.pay-panel{text-align:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px}.pay-panel img{display:block;width:min(100%,280px);height:260px;object-fit:contain;margin:0 auto 8px;border-radius:10px}.pay-panel strong{display:block}.pay-panel p{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:13px;line-height:1.55;margin:7px auto 0;max-width:360px}.pay-panel .paypal-email{color:var(--ink);font-weight:700}.payment-field{font-family:"PingFang SC",sans-serif;display:block;font-size:14px;margin:13px 0}.payment-field input{display:block;width:100%;margin-top:6px;border:1px solid #d8cec5;background:#fff;border-radius:11px;padding:13px;font-size:16px}.manual-note{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:12px;line-height:1.55;text-align:center;margin:11px 0 0}
.send-order{display:block;margin:15px 0 8px;padding:13px;border-radius:12px;background:var(--red);color:#fff;text-decoration:none;font-weight:700}.message-dialog small{display:block;color:var(--muted);line-height:1.5}
.city-guide,.real-experience{padding:38px 20px 0}.guide-intro{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:14px;line-height:1.7;margin:-5px 0 17px}.spot-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.spot-list article{display:flex;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:14px}.spot-list article>span{font-size:20px;color:#b8965a;font-weight:700}.spot-list i{display:inline-block;font-family:"PingFang SC",sans-serif;font-style:normal;font-size:11px;color:var(--red-dark);background:#f2e7e6;border-radius:999px;padding:3px 7px}.spot-list h3{font-size:17px;margin:7px 0 4px}.spot-list p{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:13px;line-height:1.5;margin:0}.route-plans{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.route-plans article{background:var(--jade);color:#fff;border-radius:17px;padding:18px}.route-plans span{font-family:"PingFang SC",sans-serif;color:#d8ad67;font-size:13px;font-weight:700}.route-plans h3{margin:8px 0 9px;font-size:18px}.route-plans p{font-family:"PingFang SC",sans-serif;color:#d7e4e0;font-size:14px;line-height:1.8;margin:0}.route-note{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:12px;line-height:1.6;margin:12px 2px 0;padding-left:12px;border-left:3px solid #d8ad67}.sample-group{margin-top:24px}.sample-title{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:0 2px 12px}.sample-title>div{display:flex;align-items:center;gap:9px}.sample-title h3{font-size:21px;margin:0}.sample-title>div>span{font-family:sans-serif;font-size:13px;font-weight:800;color:#fff;background:var(--red);border-radius:999px;padding:5px 8px}.sample-title p{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:13px;margin:0;text-align:right}.real-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.real-grid figure,.more-cities figure{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:17px;overflow:hidden}.real-grid img,.more-cities img{display:block;width:100%;height:270px;object-fit:cover;object-position:center 28%;filter:saturate(1.06) contrast(1.02) brightness(1.02)}.real-grid figcaption,.more-cities figcaption{padding:13px}.real-grid b,.real-grid span,.more-cities b,.more-cities span{display:block}.real-grid b,.more-cities b{font-size:16px}.real-grid span,.more-cities span{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:12px;line-height:1.5;margin-top:4px}.wash-grid img{object-position:center 24%}.more-cities{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:24px}.more-cities img{height:220px}
@media(max-width:680px){.spot-list,.route-plans{grid-template-columns:1fr}.real-grid{grid-template-columns:1fr 1fr}.real-grid img{height:230px}.sample-title{display:block}.sample-title p{text-align:left;margin-top:7px}.more-cities img{height:180px}.city-guide,.real-experience{padding-inline:20px}}
@media(max-width:390px){.real-grid{grid-template-columns:1fr 1fr}.real-grid img{height:225px}.real-grid figcaption{padding:11px}.more-cities{grid-template-columns:1fr}.more-cities img{height:260px}}
@media(min-width:900px){.city-guide,.real-experience{padding-inline:36px}}
.guide-photo{position:relative;margin:0 0 14px;height:290px;border-radius:18px;overflow:hidden;background:#30241f}.guide-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 32%}.guide-photo::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(22,12,10,.84))}.guide-photo figcaption{position:absolute;left:18px;right:18px;bottom:16px;color:#fff;z-index:1}.guide-photo b,.guide-photo span{display:block}.guide-photo b{font-size:20px}.guide-photo span{font-family:"PingFang SC",sans-serif;font-size:13px;margin-top:5px;color:#eaded8}.food-head{display:flex;align-items:center;justify-content:space-between;margin-top:30px;padding:16px 18px;background:#f1e6e4;border-radius:17px 17px 0 0}.food-head h3{margin:3px 0 0;font-size:22px}.food-head img{width:72px;height:72px;border-radius:50%;object-fit:cover;object-position:center 25%;border:3px solid #fff}.food-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:0 0 17px 17px;overflow:hidden}.food-list article{background:var(--paper);padding:16px}.food-list span{font-family:"PingFang SC",sans-serif;color:var(--red);font-size:12px}.food-list h3{font-size:17px;margin:7px 0}.food-list p{font-family:"PingFang SC",sans-serif;color:var(--muted);font-size:13px;line-height:1.5;margin:0}
@media(max-width:680px){.guide-photo{height:330px}.food-list{grid-template-columns:1fr 1fr}}
.route-head{margin:28px 2px 2px}.route-head h3{font-size:22px;margin:0}.route-plans h3{display:none}.route-plans p{color:#edf4f1;margin:10px 0}.route-plans small{display:block;border-top:1px solid rgba(255,255,255,.15);padding-top:10px;font-family:"PingFang SC",sans-serif;color:#bcd0ca;font-size:12px;line-height:1.6}.collage-grid{grid-template-columns:repeat(2,1fr)}.collage-grid img,.wash-grid.collage-grid img{height:auto;aspect-ratio:3/4;object-position:center;filter:none}
@media(max-width:390px){.food-list{grid-template-columns:1fr}}
.food-head img{content:url("./assets/胡志明市街头美食四拼.png");width:240px;height:135px;border-radius:14px;object-fit:cover;object-position:center;border:3px solid #fff;box-shadow:0 8px 22px rgba(71,28,26,.12)}@media(max-width:680px){.food-head img{width:150px;height:92px}}
.food-list article{padding:0 16px 16px}.food-list article::before{content:"";display:block;height:125px;margin:0 -16px 14px;background-image:url("./assets/胡志明市街头美食四拼.png");background-size:200% 200%;background-repeat:no-repeat;background-position:0 0}.food-list article:nth-child(2)::before{background-position:100% 0}.food-list article:nth-child(3)::before{background-position:0 100%}.food-list article:nth-child(4)::before{background-position:100% 100%}.food-list[data-city="岘港"] article::before{background-image:url("./assets/food-danang-collage.png")}.food-list[data-city="河内"] article::before{background-image:url("./assets/food-hanoi-collage.png")}.food-list article h3{margin-top:7px}@media(max-width:680px){.food-list article::before{height:105px}}

/* Photo-first cards */
.card-art{background-image:none;background-color:#6a5149;background-position:center 28%;background-size:cover}
.card-art span{font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.68)}
.card-art .art-symbol{display:none}
.spot-list{gap:12px}
.spot-list .spot-card{display:block;padding:0;overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:17px;box-shadow:0 4px 16px rgba(52,26,21,.05)}
.spot-image{display:block;height:180px;position:relative;background:#dfd4ca;color:#fff;text-decoration:none;overflow:hidden}
.spot-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}
.spot-image:hover img{transform:scale(1.025)}
.spot-image>span{position:absolute;right:10px;bottom:9px;padding:4px 8px;background:rgba(23,18,15,.72);border-radius:999px;font-family:"PingFang SC",sans-serif;font-size:11px}
.spot-copy{display:flex;gap:12px;padding:14px}
.spot-number{font-size:20px;color:#b8965a;line-height:1.1}
@media(max-width:680px){.spot-image{height:205px}}
.future-cities{margin:13px 2px 0;color:var(--muted);font-family:"PingFang SC",sans-serif;font-size:13px;text-align:right}.wash-grid figure:first-child{grid-column:1/-1}.wash-grid figure:first-child img{max-height:680px;object-fit:cover;object-position:center 34%}@media(max-width:680px){.future-cities{text-align:left}.wash-grid figure:first-child{grid-column:auto}.wash-grid figure:first-child img{max-height:none}}.top-actions{display:flex;align-items:center;gap:7px}.language-picker{display:flex;align-items:center;gap:3px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:8px 9px;font:600 12px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--red-dark)}.language-picker select{border:0;background:transparent;color:inherit;font:inherit;outline:0;max-width:82px}@media(max-width:420px){.topbar{padding-inline:10px}.brand{font-size:16px}.orders-button{padding:8px 9px}.language-picker{padding:7px 6px}.language-picker span{display:none}}
