:root{color:#2f2a24;background:#fbfaf7;font-family:Noto Sans TC,system-ui,sans-serif;font-size:16px;line-height:1.74;letter-spacing:.012em;font-synthesis:none;color-scheme:light;--ink: #2f2a24;--muted-ink: #6f665b;--surface: #fbfaf7;--surface-alt: #f1eee8;--accent: #7d5f2f;--focus: #245f73;--line: #d9d3c8;--radius-card: 8px;--radius-control: 6px;--shadow-soft: 0 12px 30px rgba(47, 42, 36, .12);--focus-shadow: 0 0 0 3px rgba(36, 95, 115, .22)}*{box-sizing:border-box}html{min-width:320px;background:var(--surface);scroll-behavior:smooth}body{min-width:0;min-height:100vh;margin:0;overflow-x:hidden;background:var(--surface)}a{color:var(--focus);text-underline-offset:.16em}a:hover{color:var(--accent)}button,input,select,textarea{font:inherit;font-size:1rem;line-height:1.5}p,li,label{font-size:1rem}h1,h2,h3{margin:0;font-family:"Noto Serif TC",Georgia,serif;font-weight:600;line-height:1.35;letter-spacing:.02em;text-wrap:balance}h1{max-width:15em;font-size:clamp(2rem,5vw,3.7rem)}h2{font-size:clamp(1.4rem,3vw,2.15rem)}p{max-width:38em;margin:0;text-wrap:pretty}button,.button,.direction-option{min-height:44px}button,.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-control);padding:.62rem 1.2rem;font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}button:disabled{cursor:not-allowed;opacity:.55}button:hover:not(:disabled),.button:hover{transform:translateY(-1px)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;box-shadow:var(--focus-shadow)}.page-shell{min-height:100vh}.site-header,.page-main,.site-footer{width:min(1120px,100%);margin-inline:auto;padding-inline:max(1.25rem,env(safe-area-inset-left),env(safe-area-inset-right))}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:max(1.1rem,env(safe-area-inset-top));padding-bottom:1.1rem;border-bottom:1px solid var(--line)}.brand{color:var(--ink);font-family:"Noto Serif TC",Georgia,serif;font-size:1.08rem;font-weight:600;text-decoration:none;white-space:nowrap}.site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.8rem 1.1rem}.nav-link{color:var(--muted-ink);font-size:.95rem;text-decoration:none}.nav-link:hover,.nav-link.is-active{color:var(--focus);text-decoration:underline}.page-main{padding-top:clamp(2rem,6vw,5.5rem);padding-bottom:clamp(3rem,8vw,7rem)}.maintenance-shell{position:relative;display:flex;min-height:100svh;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 78% 12%,rgba(224,174,83,.2),transparent 23rem),#f3f0e8;color:var(--ink)}.maintenance-shell:before{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(47,42,36,.12) .7px,transparent .7px);background-size:18px 18px;content:"";opacity:.18;pointer-events:none}.maintenance-header,.maintenance-main,.maintenance-footer{position:relative;z-index:1;width:min(1240px,100%);margin-inline:auto;padding-inline:max(1.5rem,env(safe-area-inset-left),env(safe-area-inset-right))}.maintenance-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:max(1.5rem,env(safe-area-inset-top));padding-bottom:1.25rem}.maintenance-brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);text-decoration:none}.maintenance-brand-mark{display:grid;width:2.6rem;height:2.6rem;place-items:center;border-radius:.85rem;color:#fff;background:var(--focus);box-shadow:0 .65rem 1.2rem #245f7333;font-size:1.15rem}.maintenance-brand-copy{display:grid;gap:.05rem}.maintenance-brand-copy strong{font-family:"Noto Serif TC",Georgia,serif;font-size:1.05rem;line-height:1.2}.maintenance-brand-copy small{color:var(--muted-ink);font-size:.62rem;font-weight:700;letter-spacing:.16em}.maintenance-badge{display:inline-flex;align-items:center;gap:.5rem;min-height:2.35rem;padding:.35rem .75rem;border:1px solid rgba(125,95,47,.28);border-radius:999px;color:var(--accent);background:#ffffff73;font-size:.78rem;font-weight:700;letter-spacing:.05em}.maintenance-badge>span{width:.5rem;height:.5rem;border-radius:50%;background:#d89a3d;box-shadow:0 0 0 .25rem #d89a3d24}.maintenance-main{display:grid;flex:1;grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);gap:clamp(2.5rem,7vw,8rem);align-items:center;padding-top:clamp(2.5rem,7vw,6.5rem);padding-bottom:clamp(3rem,7vw,6rem)}.maintenance-copy{display:grid;gap:1.45rem;max-width:37rem}.maintenance-kicker{display:inline-flex;align-items:center;gap:.65rem;color:var(--accent);font-size:.73rem;font-weight:800;letter-spacing:.16em}.maintenance-kicker>span{width:.65rem;height:.65rem;border:2px solid var(--accent);border-radius:50%}.maintenance-copy h1{max-width:8em;color:#263d43;font-size:clamp(3.2rem,7.5vw,6.6rem);letter-spacing:-.025em;line-height:1.02}.maintenance-copy h1 em{color:var(--focus);font-style:normal}.maintenance-lede{max-width:30rem;color:var(--muted-ink);font-size:clamp(1rem,1.8vw,1.2rem);line-height:1.85}.maintenance-status{display:flex;align-items:center;gap:.8rem;width:min(100%,30rem);margin-top:.35rem;padding:.85rem 1rem;border:1px solid rgba(36,95,115,.18);border-radius:.85rem;background:#ffffff94;box-shadow:0 .75rem 2rem #2f2a240f}.maintenance-status-icon{display:grid;width:2.35rem;height:2.35rem;flex:0 0 auto;place-items:center;border-radius:.65rem;color:#fff;background:var(--focus);font-size:1.2rem}.maintenance-status-copy{display:grid;gap:.05rem;min-width:8rem}.maintenance-status-copy strong{color:var(--ink);font-size:.9rem}.maintenance-status-copy span{color:var(--muted-ink);font-size:.78rem}.maintenance-progress{position:relative;display:block;width:5.3rem;height:.35rem;margin-left:auto;overflow:hidden;border-radius:999px;background:#245f731f}.maintenance-progress>span{display:block;width:42%;height:100%;border-radius:inherit;background:var(--accent);animation:maintenance-progress 2.4s ease-in-out infinite alternate}.maintenance-note{color:var(--muted-ink);font-size:.84rem}.maintenance-visual{display:grid;gap:1rem;justify-items:center}.maintenance-orbit{position:relative;width:min(100%,34rem);aspect-ratio:1 / .86;overflow:hidden;border:1px solid rgba(36,95,115,.14);border-radius:2.4rem 2.4rem 8rem;background:linear-gradient(180deg,#eff9f7d6 0,#eff9f7d6 53%,#cfe7e4d1 53%,#cfe7e4d1),#d8e9e7;box-shadow:1.5rem 1.5rem #7d5f2f1f,0 1.4rem 3rem #2f2a241f}.maintenance-orbit:before,.maintenance-orbit:after{position:absolute;border:1px solid rgba(36,95,115,.16);border-radius:50%;content:""}.maintenance-orbit:before{width:75%;aspect-ratio:1;top:8%;right:-24%}.maintenance-orbit:after{width:48%;aspect-ratio:1;top:22%;right:-10%;border-style:dashed}.maintenance-sun{position:absolute;top:11%;right:11%;width:4.3rem;height:4.3rem;border-radius:50%;background:#e4af52;box-shadow:0 0 0 .8rem #e4af5224,0 0 0 1.6rem #e4af5214}.maintenance-cloud{position:absolute;width:6rem;height:1.35rem;border-radius:999px;background:#ffffffba}.maintenance-cloud:before,.maintenance-cloud:after{position:absolute;bottom:0;border-radius:50%;background:inherit;content:""}.maintenance-cloud:before{left:1rem;width:2.3rem;height:2.3rem}.maintenance-cloud:after{right:.9rem;width:1.7rem;height:1.7rem}.maintenance-cloud-one{top:22%;left:9%;transform:scale(.72)}.maintenance-cloud-two{right:6%;bottom:24%;transform:scale(.52);opacity:.7}.maintenance-flight-path{position:absolute;top:30%;left:9%;width:75%;height:38%;border-top:1px dashed rgba(36,95,115,.45);border-radius:50%;transform:rotate(-11deg)}.maintenance-plane{position:absolute;top:26%;left:71%;display:grid;width:2.4rem;height:2.4rem;place-items:center;border:1px solid rgba(36,95,115,.16);border-radius:50%;color:var(--focus);background:#ffffffc4;box-shadow:0 .5rem 1rem #245f731f;font-size:.8rem;transform:rotate(18deg)}.maintenance-route-card{position:absolute;right:13%;bottom:12%;display:grid;gap:.75rem;width:min(58%,17rem);padding:clamp(1.25rem,4vw,2rem);border:1px solid rgba(47,42,36,.1);border-radius:1.2rem;background:#fffdf8e6;box-shadow:0 1rem 2rem #2f2a2424;transform:rotate(4deg)}.maintenance-route-label{color:var(--accent);font-size:.65rem;font-weight:800;letter-spacing:.16em}.maintenance-route-card strong{color:#263d43;font-family:"Noto Serif TC",Georgia,serif;font-size:clamp(1.4rem,3vw,2rem);line-height:1.22}.maintenance-route-line{display:flex;align-items:center;gap:.55rem;color:var(--muted-ink);font-size:.65rem;letter-spacing:.1em}.maintenance-route-line i{display:block;width:2.2rem;border-top:1px dashed var(--accent)}.maintenance-visual-caption{color:var(--muted-ink);font-family:"Noto Serif TC",Georgia,serif;font-size:.95rem}.maintenance-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.1rem;padding-bottom:max(1.5rem,env(safe-area-inset-bottom));border-top:1px solid rgba(47,42,36,.14);color:var(--muted-ink);font-size:.85rem}.maintenance-contact{color:var(--focus);font-weight:700;text-underline-offset:.2em}@keyframes maintenance-progress{0%{transform:translate(-105%)}to{transform:translate(140%)}}.hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr);gap:clamp(2rem,8vw,7rem);align-items:end;padding-bottom:clamp(3.5rem,9vw,8rem)}.hero-copy,.trust-note,.content-section,.status-panel,.form-card{display:grid;gap:1.1rem}.hero-lede{max-width:34em;font-size:clamp(1.05rem,2vw,1.2rem);color:var(--muted-ink)}.eyebrow{color:var(--accent);font-size:.85rem;font-weight:700;letter-spacing:.1em}.journey-actions{display:flex;flex-wrap:wrap;gap:.75rem;padding-top:.55rem}.button-primary{color:#fff;background:var(--focus)}.button-primary:hover{color:#fff;background:#194a5a}.button-secondary{color:var(--ink);background:transparent;border-color:var(--line)}.button-secondary:hover{color:var(--focus);background:var(--surface-alt);border-color:var(--focus)}.trust-note{align-self:stretch;padding:1.4rem;background:var(--surface-alt);border-left:3px solid var(--accent)}.trust-note p{color:var(--muted-ink)}.text-link{width:fit-content;font-weight:600}.content-section{padding-top:2.2rem;border-top:1px solid var(--line)}.preparation-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding-top:.8rem}.preparation-list p{display:grid;gap:.65rem;padding:1rem 0;border-top:2px solid var(--accent)}.list-marker{color:var(--accent);font-size:.82rem;font-weight:700}.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;padding-top:1.2rem;padding-bottom:max(1.5rem,env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--muted-ink)}.site-footer p,.site-footer a{font-size:.9rem}.form-intro{display:grid;gap:1rem;max-width:43rem;padding-bottom:2.2rem}.form-intro>p:last-child{color:var(--muted-ink)}.form-card{max-width:840px;padding:clamp(1.2rem,4vw,2.5rem);background:#fff;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-soft)}.direction-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line)}.direction-option{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--muted-ink);font-weight:600;text-decoration:none}.direction-option.is-selected{color:var(--focus);border-color:var(--focus);background:#245f730f}#reservation-form{display:grid;gap:1.4rem;padding-top:.4rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem 1rem}.form-field,.form-group,.consent-field{display:grid;gap:.38rem}.form-field>label,.quantity-field>span{color:var(--ink);font-weight:600}input,select,textarea{width:100%;min-height:44px;border:1px solid #bdb5a8;border-radius:var(--radius-control);padding:.62rem .75rem;color:var(--ink);background:var(--surface)}textarea{resize:vertical}input:disabled,textarea:disabled{color:var(--muted-ink);background:var(--surface-alt)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#a33d32}.field-help,.field-error{color:var(--muted-ink);font-size:.9rem}.field-error{min-height:1.2em;color:#8c2f28}.form-error-summary{padding:.85rem 1rem;border-left:3px solid #a33d32;color:#7e2d27;background:#fff4f2}.form-group{margin:0;padding:1.1rem 0 0;border:0;border-top:1px solid var(--line)}.form-group legend{padding:0;font-weight:700}.luggage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;padding-top:.45rem}.quantity-field{display:grid;gap:.35rem}.quantity-field>span{font-size:.9rem}.check-field{display:flex;align-items:flex-start;gap:.65rem}.check-field input{width:1.3rem;min-width:1.3rem;height:1.3rem;min-height:1.3rem;margin-top:.28rem;accent-color:var(--focus)}.special-luggage{display:grid;gap:.35rem;padding-top:.45rem}.stop-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:.45rem .65rem;align-items:end;padding:.75rem;background:var(--surface-alt);border-radius:var(--radius-control)}.stop-row label{grid-column:span 1;font-weight:600}.stop-row input{grid-column:span 1}.text-button{min-height:44px;padding-inline:.6rem;color:var(--focus);background:transparent;border-color:transparent}.review-panel,.status-panel{max-width:640px;padding:clamp(1.25rem,4vw,2.4rem);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-alt)}.review-panel h2,.status-panel h1{max-width:20em}.slip-preview{display:grid;gap:.45rem;margin:1rem 0}.slip-preview label{color:var(--ink);font-weight:600}#reservation-slip{min-height:22rem;color:var(--ink);background:var(--surface);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap}.status-note{padding:.9rem 1rem;border-left:3px solid var(--focus);background:var(--surface)}.narrow-content{max-width:700px}.narrow-content h2{padding-top:1rem}@media(max-width:760px){.maintenance-header{align-items:flex-start}.maintenance-main{grid-template-columns:1fr;gap:3rem;padding-top:2.5rem}.maintenance-copy h1{font-size:clamp(3.2rem,17vw,5.5rem)}.maintenance-orbit{width:min(100%,30rem);border-radius:1.7rem 1.7rem 5rem}.maintenance-footer,.site-header{align-items:flex-start;flex-direction:column}.site-nav{justify-content:flex-start}.hero,.form-grid,.preparation-list{grid-template-columns:1fr}.hero{gap:2.2rem}.luggage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stop-row{grid-template-columns:1fr}.stop-row label,.stop-row input{grid-column:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
