@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700&family=Noto+Serif+TC:wght@400;500;600;700&display=swap');
:root{--paper:#f6f2e9;--ink:#353d32;--muted:#77776b;--green:#364d3d;--rust:#a6533e;--line:#d9d6c9;--serif:'Noto Serif TC','PMingLiU',serif;--sans:'Noto Sans TC',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.9 var(--sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b46a50;outline-offset:5px}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.site-header{height:104px;max-width:1440px;margin:auto;padding:0 6%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:12px;align-items:center}.brand-mark{font:italic 56px/1 Georgia,serif;color:var(--rust);letter-spacing:-9px;padding-right:9px}.brand-mark span{color:var(--green)}.brand-name{font-family:var(--serif);font-size:24px;letter-spacing:5px;line-height:1.35}.brand-name>span{display:block;font:9px/2 var(--sans);letter-spacing:3.3px}.site-header nav{display:flex;gap:35px;font-size:13px}.site-header nav a:hover{color:var(--rust)}.header-book{border:1px solid var(--green);border-radius:50px;padding:10px 23px;font-size:13px}.header-book span{margin-left:20px}.header-book:hover{background:var(--green);color:white}.hero{max-width:1440px;margin:auto;padding:32px 6% 0;display:grid;grid-template-columns:1.06fr 1fr;gap:5%;min-height:650px}.hero-copy{padding-top:44px}.eyebrow,.section-no{font-size:11px;letter-spacing:1.8px;font-weight:500}.eyebrow{display:flex;align-items:center;gap:10px}.tiny-sun{font-size:27px;color:var(--rust);line-height:1}.hero h1{font-size:clamp(42px,4.65vw,68px);line-height:1.6;letter-spacing:3px;margin:26px 0 24px}.warm-word{position:relative;color:var(--rust);white-space:nowrap}.warm-word svg{position:absolute;bottom:-10px;left:0;width:100%;height:18px;stroke:#bf9a79;stroke-width:1.6}.hero-intro{font-size:14px;line-height:2.2;color:#74776b}.text-link{display:inline-flex;gap:28px;align-items:center;border-bottom:1px solid #a8ab98;padding-bottom:7px;margin-top:28px;font-size:13px;font-weight:500}.text-link:hover{color:var(--rust);border-color:var(--rust)}.hero-foot{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:10px;color:var(--muted);letter-spacing:1px;margin-top:52px}.local-dot{width:5px;height:5px;border-radius:50%;background:var(--rust)}.hero-small{font:italic 12px Georgia,serif;margin-left:auto;letter-spacing:.2px}.hero-visual{position:relative;min-height:590px;border-radius:200px 200px 4px 4px;overflow:hidden;background:#a2a18a}.hero-visual img{width:100%;height:100%;object-fit:cover;position:absolute;filter:brightness(.88) saturate(.65);object-position:50% 50%}.photo-shade{position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(35,40,27,.65))}.photo-note{position:absolute;bottom:50px;left:40px;color:#fffaf0}.photo-note span{font-size:11px;letter-spacing:3px}.photo-note strong{display:block;font:500 26px/2 var(--serif);letter-spacing:2px}.round-stamp{position:absolute;right:18px;top:35%;border:1px solid #f6f2e9b0;border-radius:50%;width:105px;height:105px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fffaf0;font:15px/1.6 var(--serif);text-align:center;transform:rotate(12deg);letter-spacing:2px}.round-stamp span{font:6px/2.6 var(--sans);letter-spacing:1px}.image-caption{position:absolute;right:15px;bottom:10px;color:#ffffffa0;font-size:9px}.booking-section{max-width:1120px;margin:85px auto 0;padding:45px 40px 48px;display:grid;grid-template-columns:.85fr 1.25fr;gap:70px;background:#ebece2;border-radius:5px;position:relative}.booking-heading{padding:10px 0 0 12px}.section-no{color:#878878;font:10px/2 var(--sans);letter-spacing:2px}.booking-heading h2{font-size:32px;line-height:1.7;margin:18px 0}.booking-heading>p{font-size:13px;color:var(--muted)}.little-route{width:145px;height:65px;color:#a59876;margin-top:22px;stroke-width:1.2}.booking-form{padding:0 5px}.trip-types{display:flex;border-bottom:1px solid #cecfbf;gap:22px;margin-bottom:23px}.trip-type{padding:8px 2px 13px;background:none;border:none;border-bottom:2px solid transparent;color:var(--muted);font-size:13px;white-space:nowrap}.trip-type.active{border-bottom-color:var(--green);color:var(--green);font-weight:600}.booking-form>label{display:flex;justify-content:space-between;font-size:13px;font-weight:500;margin-bottom:10px}.booking-form>label span{font-size:10px;color:var(--muted);font-weight:400}.address-field{background:#fffefa;border:1px solid #d2d4c7;border-radius:4px;display:flex;align-items:center;gap:10px;padding:0 14px}.address-field:focus-within{outline:2px solid #698168;outline-offset:2px}.address-field svg{width:20px;flex-shrink:0;color:#6f7a62}.address-field input{background:none;border:0;outline:0!important;padding:17px 0;width:100%;font-size:13px;color:var(--ink)}input::placeholder,textarea::placeholder{color:#93968c;font-size:12px}.booking-options{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.option-label{font-size:11px;color:#737869;display:flex;flex-direction:column;gap:6px}select{width:100%;color:var(--ink);border:none;border-bottom:1px solid #bec4b4;border-radius:0;background:transparent;padding:5px 22px 10px 0;font-size:13px;outline-offset:3px}.extra-details{margin:19px 0;color:#6d7467;font-size:11px}.extra-details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px;padding:4px 0}.extra-details summary::-webkit-details-marker{display:none}textarea{width:100%;resize:vertical;border:1px solid #c9cebe;border-radius:3px;padding:12px;background:#fffefa;color:var(--ink);margin-top:10px;font-size:13px}.line-button{border:0;border-radius:4px;background:var(--green);color:#fffefa;width:100%;padding:16px 18px;display:flex;align-items:center;justify-content:center;gap:15px;font-size:14px;transition:background .2s}.line-button:hover{background:#253d2d}.line-icon{background:#fffefa;color:var(--green);border-radius:8px;font-size:8px;font-weight:700;line-height:21px;padding:0 4px;position:relative}.line-icon:after{content:'';position:absolute;bottom:-3px;left:5px;border-top:4px solid #fffefa;border-right:4px solid transparent}.button-arrow{margin-left:auto}.form-note{font-size:10px;color:#797f70;text-align:center;margin-top:12px;line-height:1.9}.field-error{color:#a1402f;font-size:12px;margin-top:8px}.our-way,.journeys,.questions{max-width:1120px;margin:115px auto 0}.way-kicker{display:flex;justify-content:space-between;align-items:center}.handwritten{font-family:var(--serif);font-size:12px;color:#8d846e;letter-spacing:1px}.way-content{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:32px}.way-content h2,.section-heading h2,.area-copy h2,.questions h2{font-size:36px;line-height:1.8;letter-spacing:1px}.way-content>div>p{color:#74796e;font-size:13px;margin-bottom:18px;line-height:2.2}.care-strip{display:flex;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:55px;padding:22px 25px;font-size:13px;letter-spacing:1px}.care-strip span:before{content:'✳';color:#a77c52;margin-right:18px;font-size:18px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading h2{margin-top:20px}.section-heading>p{font-size:12px;color:var(--muted);padding-bottom:10px}.service-list{border-top:1px solid var(--line)}.service-row{display:flex;align-items:center;gap:30px;padding:28px 8px;border-bottom:1px solid var(--line);transition:padding .2s,background .2s}.service-row:hover{background:#eeeadf;padding-left:18px}.service-number{align-self:flex-start;color:var(--rust);font:italic 16px/2 Georgia,serif}.service-row h3{font-size:23px;letter-spacing:1px}.service-row p{font-size:12px;color:var(--muted);margin-top:7px}.service-art{width:110px;height:80px;stroke-width:1.2;margin-left:auto;color:#9a8b6c}.row-arrow{border:1px solid #bec2ae;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;margin-left:35px;font-size:19px}.area-section{max-width:1230px;margin:115px auto 0;display:grid;grid-template-columns:1.1fr 1fr;gap:75px;align-items:center}.area-art{background:#e9e8dc;border-radius:5px;overflow:hidden;padding:10px 0 25px;text-align:center}.area-art svg{width:100%;height:auto;stroke:none}.map-road{stroke:#d3d3bd;stroke-width:22;fill:none}.map-road.small{stroke:#dddbcb;stroke-width:10}.map-route{fill:none;stroke:#a16249;stroke-width:2.5;stroke-dasharray:5 7}.map-point{fill:#a16249;stroke:#f6f2e9;stroke-width:5}.area-art text{fill:#4b5747;font:22px var(--serif);letter-spacing:4px}.area-art .map-small-text{font:11px var(--sans);fill:#929583;letter-spacing:2px}.map-sun{fill:none;stroke:#a88d55;stroke-width:1.5}.area-art>span{font:13px var(--serif);letter-spacing:2px;color:#7d806c}.area-copy{padding-right:30px}.area-copy h2{font-size:29px;margin:20px 0}.area-copy>p{font-size:12px;color:var(--muted);margin-bottom:15px;line-height:2.2}.questions{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}.questions h2{font-size:30px;margin-top:20px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;font-size:13px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#a28b6a;font-size:18px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{font-size:12px;color:var(--muted);line-height:2.2;padding:0 25px 22px 0}.closing{margin-top:115px;text-align:center;background:#e9e4d8;padding:55px 25px 60px}.closing .tiny-sun{font-size:35px}.closing>p{font:30px/2 var(--serif);letter-spacing:3px;margin:20px 0}.closing>a{font-size:12px;border-bottom:1px solid #969d87;padding-bottom:7px}.closing>a span{margin-left:35px}footer{max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:48px 35px}footer>p{font-size:10px;color:var(--muted);line-height:2}footer>div{display:flex;flex-direction:column;gap:5px;font-size:11px}footer>small{font-size:9px;color:#939486;text-align:right}.footer-brand .brand-mark{font-size:45px}.footer-brand .brand-name{font-size:20px}.mobile-book{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{border:1px solid #d8d6c8;border-radius:12px;background:var(--paper);color:var(--ink);padding:38px;width:min(92vw,470px);box-shadow:0 20px 100px #15241933}dialog::backdrop{background:#1b261b66;backdrop-filter:blur(3px)}dialog h2{font-size:27px;margin:12px 0}dialog>p:not(.eyebrow){font-size:12px;color:var(--muted)}dialog textarea{margin:20px 0 15px}.close-dialog{position:absolute;top:10px;right:15px;border:0;background:none;color:var(--muted);font-size:26px}.fallback-open{display:block;text-align:center;font-size:13px;margin-top:18px;text-decoration:underline}#copy-status{min-height:24px;text-align:center;margin-top:12px}
@media(min-width:1500px){.hero{min-height:700px}.hero-visual{min-height:640px}}@media(max-width:1200px){.booking-section,.our-way,.journeys,.questions{margin-left:6%;margin-right:6%}.area-section{margin-left:6%;margin-right:6%;gap:40px}.hero-foot{margin-top:35px}.hero-small{width:100%;margin-left:12px}.hero-visual{min-height:560px}.hero h1{font-size:50px}.booking-section{gap:40px}.way-content{gap:60px}.photo-note{left:28px}.photo-note strong{font-size:22px}}@media(max-width:800px){.site-header{height:86px;padding:0 6%}.site-header nav{display:none}.brand-name{font-size:21px}.brand-mark{font-size:48px}.header-book{padding:8px 16px;font-size:11px}.header-book span{margin-left:12px}.hero{padding-top:8px;grid-template-columns:1fr 1fr;gap:25px;min-height:510px}.hero-copy{padding-top:30px}.hero h1{font-size:36px;letter-spacing:1px;line-height:1.75;margin-top:18px}.eyebrow{font-size:9px;letter-spacing:.5px}.hero-intro{font-size:12px}.hero-visual{min-height:455px;border-radius:160px 160px 4px 4px}.hero .text-link{font-size:11px;gap:10px}.hero-foot{font-size:8px;margin-top:30px}.photo-note{left:20px;bottom:35px}.photo-note strong{font-size:16px;letter-spacing:.5px}.round-stamp{width:80px;height:80px;font-size:12px;right:10px}.round-stamp span{font-size:5px;letter-spacing:.5px}.booking-section{margin-top:60px;padding:30px;gap:25px;grid-template-columns:.8fr 1.2fr}.booking-heading{padding-left:0}.booking-heading h2{font-size:25px}.trip-types{gap:10px}.trip-type{font-size:11px}.booking-options{gap:12px}.line-button{font-size:12px;gap:9px;padding:15px 12px}.way-content{gap:35px}.way-content h2,.section-heading h2{font-size:29px}.our-way,.journeys,.questions,.area-section{margin-top:80px}.handwritten{font-size:10px}.care-strip{padding:18px 0;font-size:11px}.care-strip span:before{margin-right:8px}.area-section{gap:30px}.area-copy{padding-right:0}.area-copy h2{font-size:24px}.service-row h3{font-size:20px}.service-art{width:85px}.row-arrow{margin-left:10px}.questions{gap:35px}.closing{margin-top:80px}.closing>p{font-size:25px}footer{flex-wrap:wrap;padding:35px 6%;gap:20px}footer>small{margin-left:auto}}@media(max-width:580px){html{scroll-padding-top:25px}.site-header{height:80px}.hero{display:flex;flex-direction:column;padding-top:16px;gap:30px}.hero-copy{padding-top:0}.hero .eyebrow{font-size:10px;letter-spacing:1px}.hero h1{font-size:45px;line-height:1.6;letter-spacing:2px;margin:20px 0}.hero-intro{font-size:13px}.hero .text-link{font-size:12px;margin-top:22px}.hero-foot{margin-top:25px;font-size:9px}.hero-small{width:auto;margin-left:auto;font-size:10px}.hero-visual{min-height:360px;border-radius:180px 180px 4px 4px}.hero-visual img{object-position:50% 55%}.round-stamp{top:31%;right:20px;width:90px;height:90px}.photo-note{bottom:30px;left:28px}.photo-note strong{font-size:23px}.photo-note>span{font-size:10px}.booking-section{display:block;margin-top:45px;padding:26px 22px 24px}.booking-heading h2{font-size:27px;line-height:1.55;margin:10px 0}.booking-heading h2 br{display:none}.booking-heading>p{font-size:12px}.booking-heading>p br{display:none}.little-route{display:none}.booking-form{margin-top:22px;padding:0}.trip-types{justify-content:space-between;gap:12px}.trip-type{font-size:12px}.address-field{padding:0 11px}.address-field input{font-size:13px;padding:16px 0}.address-field input::placeholder{font-size:11px}.line-button{font-size:13px;padding:16px}.form-note{font-size:10px}.our-way,.journeys,.questions,.area-section{margin-top:65px}.way-kicker{display:block}.handwritten{display:block;margin-top:12px;font-size:11px}.way-content{grid-template-columns:1fr;gap:22px;margin-top:20px}.way-content h2,.section-heading h2{font-size:30px}.way-content>div>p{font-size:13px}.way-content .text-link{margin-top:8px}.care-strip{margin-top:30px;flex-wrap:wrap;gap:10px;padding:18px 0;font-size:11px}.care-strip span{width:100%}.care-strip span:before{margin-right:15px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{margin-top:12px}.section-heading>p{margin-top:17px;font-size:12px}.service-row{gap:16px;padding:20px 0}.service-number{font-size:13px}.service-row h3{font-size:19px;letter-spacing:0}.service-row p{font-size:11px;max-width:245px}.service-art{display:none}.row-arrow{margin-left:auto;width:33px;height:33px;flex-shrink:0;font-size:15px}.area-section{display:flex;flex-direction:column;gap:30px}.area-art{width:100%;padding-bottom:20px}.area-copy h2{font-size:28px;margin-top:12px}.area-copy>p{font-size:13px}.questions{display:block}.questions h2{font-size:29px;margin-top:10px}.questions h2 br{display:none}.faq-list{margin-top:25px}.faq-list summary{font-size:12px}.closing{margin-top:65px;padding:40px 15px}.closing>p{font-size:22px;letter-spacing:1px;margin:15px 0}.closing .tiny-sun{font-size:28px}footer{padding:35px 6% 105px;display:grid;grid-template-columns:1fr 1fr;gap:25px 15px}.footer-brand{grid-column:1/-1}footer>p{font-size:10px}footer>small{grid-column:1/-1;text-align:left;margin:0;font-size:9px}.mobile-book{display:flex;position:fixed;bottom:14px;left:6%;right:6%;background:var(--green);color:#fffefa;align-items:center;justify-content:space-between;padding:14px 22px;border-radius:40px;font-size:13px;box-shadow:0 6px 24px #253b3230;z-index:10}.mobile-book.is-hidden{opacity:0;pointer-events:none}dialog{padding:30px 23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* HY：書寫感字母交織與中文標準字 */
.brand-logo{width:190px;height:auto;display:block}.footer-brand .brand-logo{width:175px}.brand{gap:0}@media(max-width:800px){.brand-logo{width:165px}}@media(max-width:580px){.brand-logo{width:160px}.footer-brand .brand-logo{width:175px}}

/* Route, time and vehicle details */
.next-address-label{margin-top:19px}.time-fieldset{padding:0;border:0;margin:24px 0 0}.time-fieldset legend{font-size:13px;font-weight:500;margin-bottom:10px}.time-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.time-options label{cursor:pointer;font-size:12px;display:flex;gap:8px;align-items:center;padding:10px 12px;border:1px solid #cbd0c0;border-radius:4px;background:#f4f4eb}.time-options input{accent-color:var(--green);margin:0;width:15px;height:15px}.time-options label:has(input:checked){border-color:var(--green);background:#e0e6d8}.scheduled-fields{margin-top:16px}.scheduled-fields[hidden]{display:none}.scheduled-fields>label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:8px}.scheduled-fields>label span{font-size:10px;color:var(--muted)}#scheduled-at{max-width:100%;width:100%;min-width:0;padding:12px;border:1px solid #cbd0c0;border-radius:4px;background:#fffefa;color:var(--ink);font-size:13px}.booking-form>.vehicle-label{margin-top:22px}.vehicle-note{font-size:10px;color:var(--muted);margin:9px 0 21px;line-height:1.8}.outings{max-width:1120px;margin:100px auto 0}.outings .section-heading h2{font-size:33px}.outings-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);gap:0 55px}.outing{padding:30px 0;border-bottom:1px solid var(--line)}.outing-region{font-size:9px;letter-spacing:1.8px;color:#a27b59}.outing h3{font-size:25px;margin:12px 0}.outing p{font-size:12px;color:var(--muted);line-height:2.2;max-width:440px}.outing button{background:none;border:0;border-bottom:1px solid #a8ab98;color:var(--green);font-size:11px;padding:0 0 5px;margin-top:20px}.outings-note{font-size:10px;color:#8a8b7b;margin-top:20px;line-height:2}.outings-note a{text-decoration:underline;text-underline-offset:3px}@media(max-width:1200px){.outings{margin-left:6%;margin-right:6%}.site-header nav{gap:23px}}@media(max-width:800px){.outings{margin-top:80px}.outings .section-heading h2{font-size:28px}.outings-grid{gap:0 30px}.time-options{gap:7px}.time-options label{font-size:11px;padding:10px 7px}}@media(max-width:580px){.outings{margin-top:65px}.outings-grid{grid-template-columns:1fr}.outing{padding:25px 0}.outings .section-heading h2{font-size:28px}.outing h3{font-size:24px}.outing p{font-size:13px}.time-options label{font-size:12px;padding:12px 9px}.booking-form>label{font-size:13px}}
