:root{--ink:#19382e;--muted:#58685e;--paper:#faf8f2;--line:#d6ded5;--serif:'Yu Mincho','Hiragino Mincho ProN',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Yu Gothic',Meiryo,sans-serif;line-height:1.8}a{color:inherit;text-underline-offset:4px}img{max-width:100%}.wrap{width:calc(100% - 80px);max-width:1240px;margin:auto}header{background:#faf8f2f5;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:88px}.brand{font:26px/1.2 Georgia,serif;letter-spacing:.04em;text-decoration:none;white-space:nowrap}.brand small{display:block;font:10px/1.8 'Yu Gothic',sans-serif;letter-spacing:.16em;margin-top:5px}nav{display:flex;flex-wrap:wrap;gap:18px;font-size:12px}nav a{text-decoration:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:620px}.hero-text{padding:85px max(40px,calc((100vw - 1240px)/2));padding-right:30px}.eyebrow{font:11px/1.8 Arial,sans-serif;letter-spacing:.18em;color:#647b69;margin:0 0 20px}h1{font:500 clamp(40px,4.1vw,64px)/1.45 var(--serif);letter-spacing:.04em;margin:0 0 28px}.hero-sub{font-size:18px}.hero-text>p:not(.eyebrow){font-size:14px}.tags{display:flex;gap:10px;margin:26px 0}.tags span{border:1px solid #a8b7a9;padding:5px 11px;font-size:12px}.button{display:inline-block;background:var(--ink);color:white;padding:16px 24px;font-size:13px;text-decoration:none}.hero-scene{position:relative;overflow:hidden;background:url('assets/vietnam-city-soft-background.webp') center/cover}.hero-scene img{position:absolute;bottom:0;left:0;width:100%;height:auto}.hero-scene>span{position:absolute;right:15px;bottom:12px;background:#19382ec9;color:white;font-size:10px;padding:3px 8px}.essentials{background:var(--ink);color:white;padding:23px 0}.essentials .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.essentials p{margin:0;border-right:1px solid #ffffff40}.essentials p:last-child{border:0}.essentials b{font-size:14px;font-weight:500}.essentials span{display:block;font-size:11px;opacity:.8}.section{padding:90px 0}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}h2{font:500 36px/1.6 var(--serif);margin:0}.section-heading>p{font-size:12px;color:var(--muted);max-width:420px}.destination-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 34px}.destination{min-width:0;border-bottom:1px solid var(--line);padding-bottom:25px}.destination-photo{display:block;position:relative;overflow:hidden;aspect-ratio:16/10}.destination-photo img{width:100%;height:100%;object-fit:cover}.destination-photo>span{position:absolute;left:20px;bottom:20px;font:12px/1.4 Arial,sans-serif;letter-spacing:.15em;background:#19382ed9;color:white;padding:8px 12px}.destination-copy{padding:24px 0 0}.route{font-size:11px;color:var(--muted);margin:0 0 8px}.destination h3{font:500 30px/1.5 var(--serif);margin:0}.destination h3 a{text-decoration:none}.city-line{font-size:16px;margin:12px 0}.city-note{font-size:12px;line-height:1.9;color:var(--muted);min-height:69px}.fare-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.fare-pair p{font-size:11px;margin:0}.fare-pair strong{display:block;font:23px/1.6 Arial,sans-serif;letter-spacing:-.04em}.fare-pair small{font-size:13px;margin-left:2px}.destination-link{display:flex;justify-content:space-between;font-size:13px;text-decoration:none}.destination-link:hover{text-decoration:underline}.season-note{margin-top:38px;padding:24px 30px;background:#e7eee5;font-size:13px}.season-note p{margin:7px 0}.season-note span{font-size:11px}.shopping{background:#eee8de}.shop-index{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.shop-index h3{font:500 25px/1.5 var(--serif);margin:0 0 14px}.shop-index ul{list-style:none;padding:0;margin:0 0 15px}.shop-index li{border-top:1px solid #c9cabc;padding:13px 0}.shop-index li>a{font-size:13px}.shop-index li>span{display:block;font-size:11px;color:var(--muted);margin-top:5px}.guide-link{font-size:12px}.note{font-size:11px;color:var(--muted);line-height:1.9;margin-top:30px}.days{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.days li{padding:24px 24px 0 0}.days b{font:italic 26px/1.5 Georgia,serif}.days h3{font-size:16px;margin:15px 0 10px}.days p{font-size:12px;color:var(--muted);margin:0}footer{background:var(--ink);color:white;padding:55px 0 22px}.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}footer h2{font:500 17px/1.8 'Yu Gothic',sans-serif}footer p{font-size:12px;line-height:2}footer .note{color:#d0dbd3}.copyright{display:flex;justify-content:space-between;border-top:1px solid #ffffff40;padding-top:20px;margin-top:30px;font-size:10px}
@media(max-width:1100px){.header-inner{flex-wrap:wrap;gap:15px;padding:15px 0}nav{gap:10px 18px}.hero-text{padding:55px 30px}.hero{min-height:560px}.fare-pair strong{font-size:21px}.wrap{width:calc(100% - 48px)}}
@media(max-width:700px){html{scroll-padding-top:120px}.wrap{width:calc(100% - 36px)}.header-inner{display:block}.brand{font-size:22px}nav{margin-top:12px;font-size:11px;gap:8px 13px}.hero{display:flex;flex-direction:column-reverse;min-height:0}.hero-scene{height:75vw;max-height:430px}.hero-text{padding:30px 24px 40px}h1{font-size:42px;margin-bottom:18px}.hero-text>p:not(.eyebrow){font-size:13px}.tags{flex-wrap:wrap}.essentials .wrap{grid-template-columns:1fr;gap:15px}.essentials p{border:0;border-bottom:1px solid #ffffff30;padding-bottom:10px}.section{padding:55px 0}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:18px}h2{font-size:29px}.destination-grid{grid-template-columns:1fr;gap:35px}.destination h3{font-size:29px}.city-note{min-height:0}.fare-pair strong{font-size:23px}.season-note{padding:20px}.shop-index{grid-template-columns:1fr;gap:28px}.days{grid-template-columns:1fr 1fr;gap:22px 10px}.days li{padding-right:12px}.company-grid{grid-template-columns:1fr;gap:25px}.copyright{display:block}.copyright a{display:block;margin-top:10px}.button{font-size:12px;padding:14px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Free-time series: departure conditions and clear review scale. */
.departure-band{background:#fff8e9;color:#263c32;border-block:1px solid #ded5bc;padding:22px 0;line-height:1.8}.departure-band strong{font-size:18px}.departure-band p{font-size:15px;margin:5px 0}.departure-band small{display:block;font-size:12px}.rating b{display:block;width:fit-content;font-size:13px;margin-bottom:5px}.rating span{display:block}.hero-copy .audience-line{font-weight:600;font-size:16px;line-height:1.9;margin:0 0 16px}.brand small{font-size:10px;letter-spacing:.08em}.hero-scene>span{max-width:90%;line-height:1.6}.hero-image-note{max-width:90%;line-height:1.6}
@media(max-width:650px){.departure-band strong{font-size:16px}.departure-band p{font-size:13px}.departure-band small{font-size:11px}}
