*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0}
button,input,select,textarea{font:inherit}
button,a,input,select,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
img{max-width:100%;display:block}
picture{display:block;overflow:hidden}
a{color:inherit}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #b35331;outline-offset:5px}
.preview-dialog-open{overflow:hidden}
.preview-dialog{width:min(940px,calc(100% - 32px));max-height:88dvh;padding:0;border:0;border-radius:18px;background:#faf8f2;color:#1a302c;box-shadow:0 24px 100px #0005;font:16px/1.65 system-ui,sans-serif}
.preview-dialog::backdrop{background:#071b19b8;backdrop-filter:blur(5px)}
.preview-dialog-content{padding:28px 36px 36px}
.preview-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #d9ded5;padding-bottom:15px;font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.preview-dialog-top button{border:0;background:transparent;min-height:44px;padding:6px 12px;font-size:13px;letter-spacing:0;text-transform:none}
.preview-dialog-top button span{font-size:24px;margin-left:12px}
.preview-dialog h2{font:normal clamp(28px,5vw,44px)/1.12 Georgia,serif;max-width:720px;letter-spacing:-.035em;margin:28px 0}
.preview-dialog h3{font:600 18px/1.3 system-ui,sans-serif;margin-top:26px}
.preview-dialog p{overflow-wrap:break-word}
.preview-tour-hero{border-radius:10px;overflow:hidden;aspect-ratio:2.4}
.preview-tour-hero img{width:100%;height:100%;object-fit:cover}
.preview-tour-hero picture{height:100%}
.preview-meta{font-size:13px;letter-spacing:.06em;text-transform:uppercase;margin-top:22px}
.preview-notice{padding:18px 20px;background:#e9ede5;border-left:3px solid #647f5f;font-size:14px;line-height:1.65}
.preview-detail-columns{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:36px}
.preview-detail-columns aside{background:#eeeae1;padding:0 22px 20px;border-radius:10px;align-self:start}
.preview-day-list{list-style:none;padding:0;margin:24px 0}
.preview-day-list li{border-top:1px solid #d5d9d0;padding:14px 0}
.preview-day-list span{font-size:12px;letter-spacing:.09em;text-transform:uppercase;font-weight:700}
.preview-day-list p{margin:4px 0}
.preview-primary{border:1px solid #153f36;border-radius:5px;color:#fff;background:#153f36;padding:13px 18px;min-height:48px;line-height:1.4}
.preview-small{font-size:12px;line-height:1.6}
.preview-planner{display:grid;gap:18px}
.preview-planner label{font-size:13px;font-weight:600;display:grid;gap:6px}
.preview-planner input,.preview-planner select{width:100%;border:1px solid #a8b6a8;border-radius:4px;min-height:48px;background:#fff;padding:10px;color:#173c33}
.preview-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.preview-review{padding:5px 22px 12px;background:#e6eddf;border-radius:6px}
.preview-credit-list{padding-left:20px}
.preview-credit-list li{margin-bottom:20px;font-size:14px}
.preview-empty{grid-column:1/-1;padding:40px 24px;border:1px solid #aeb9aa;border-radius:8px;background:#f5f3ea;color:#173c33}
.preview-empty button{padding:12px 20px;background:#153f36;color:#fff;border:0;border-radius:4px}
@media(max-width:650px){.preview-dialog-content{padding:18px 20px 28px}.preview-detail-columns{grid-template-columns:1fr;gap:6px}.preview-form-row{grid-template-columns:1fr}.preview-tour-hero{aspect-ratio:1.6}.preview-dialog{max-height:91dvh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
