.trip-page{background:var(--cream)}.trip-preferences>summary{cursor:pointer;font-weight:700;padding:16px 0;min-height:48px}.trip-details{margin:14px 0;border-top:1px solid var(--line);padding-top:8px}.trip-caution summary,.trip-details summary{cursor:pointer;font-weight:600;min-height:44px;padding:10px 0;line-height:1.5}.trip-details[open] summary{margin-bottom:8px}.trip-essential{border-left:3px solid var(--sea);padding:10px 12px;background:var(--cream);font-size:.9rem}.trip-fit{font-size:.9rem}.trip-card-copy small{display:block;color:#445b63}.trip-card-copy .trip-links{margin-top:18px}.trip-card-copy .trip-links a{min-height:44px;display:inline-flex;align-items:center}@media print{.trip-results details::details-content{display:block!important;content-visibility:visible!important}.trip-results details>*{display:block!important}.trip-results details>summary{display:none!important}}.trip-planner{padding-bottom:70px}.trip-intro{padding:24px 0}.trip-form{background:var(--paper);padding:clamp(18px,4vw,42px);border:1px solid var(--line);border-radius:16px}.trip-form fieldset{border:0;padding:0;margin:0 0 30px;min-width:0}.trip-form legend{font:600 1.4rem var(--serif);margin-bottom:18px}.trip-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.trip-planner label{display:flex;flex-direction:column;gap:8px;font-weight:600}.trip-planner input:not([type=checkbox]),.trip-planner select,.trip-planner textarea{display:block;width:100%;min-width:0;padding:12px;border:1px solid #71858b;border-radius:6px;background:var(--paper);color:var(--ink);font:inherit;font-size:16px}.trip-planner textarea{resize:vertical}.trip-planner button{min-height:44px;border:1px solid var(--sea);border-radius:6px;padding:10px 16px;background:var(--paper);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.trip-planner button.button--dark,.trip-planner button[aria-pressed=true]{background:var(--navy);color:white}.trip-planner button:disabled{opacity:.65;cursor:wait}.trip-planner :focus-visible{outline:3px solid var(--sea);outline-offset:4px}.trip-form .trip-interests{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 0}.trip-interests legend{font:600 1rem var(--sans)}.trip-interests label{flex-direction:row;align-items:center;background:var(--cream);padding:12px;border-radius:6px;text-transform:capitalize;min-height:44px}.trip-interests input{width:20px;height:20px;accent-color:var(--sea)}.trip-help,.trip-location,.trip-note{font-size:.9rem;line-height:1.65}.trip-help{color:#445b63}.trip-actions,.trip-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.trip-links a{font-weight:600;text-decoration:underline;text-underline-offset:4px}.trip-actions{margin:15px 0}.trip-actions label{font-size:.85rem}.trip-message{color:var(--sea);font-weight:600}.trip-error{padding:18px;background:#fff0eb;border-left:4px solid #9c3d21}.trip-empty{padding:30px 0}.trip-results>header h2{font:clamp(2rem,5vw,3.5rem) var(--serif);margin:12px 0}.trip-caution{padding:22px;background:#eee5d4;border-left:4px solid var(--gold);line-height:1.65;margin:24px 0}.trip-caution p:last-child{margin-bottom:0}.trip-day{margin:35px 0 50px}.trip-day-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.trip-day-heading h3{font:2rem var(--serif)}.trip-stop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:22px;gap:22px}.trip-stop{border:1px solid var(--line);background:var(--paper);border-radius:12px;overflow:hidden;min-width:0}.trip-stop>h3{padding:18px 20px;margin:0;background:var(--navy);color:white;font-size:1rem}.trip-stop>.trip-actions,.trip-stop>button,.trip-stop>p{margin:20px}.trip-stop-empty{border-style:dashed;background:transparent}.trip-card-copy{padding:22px}.trip-card-copy h4{font:1.6rem var(--serif);margin:0 0 8px}.trip-photo{position:relative}.trip-photo img{width:100%;height:240px;object-fit:cover}.trip-photo small{position:absolute;bottom:10px;left:10px;padding:5px 8px;background:var(--paper)}.trip-card-copy p{line-height:1.65}.trip-card-copy dl{font-size:.88rem;line-height:1.6}.trip-card-copy dt{font-weight:700;margin-top:12px}.trip-card-copy dd{margin:0}.trip-travel{font-size:.9rem;line-height:1.7;border-left:3px solid var(--sea);padding:10px 18px}.trip-replacements{border:2px solid var(--sea);padding:24px;border-radius:12px}.trip-replacements h3{font:1.7rem var(--serif)}.trip-check-list{padding:24px;background:var(--paper);border:1px solid var(--line)}.trip-check-list summary{cursor:pointer;font-weight:700;min-height:44px}.trip-check-list>div{border-top:1px solid var(--line);padding-top:15px}.trip-print-only,.trip-print-url{display:none}@media(max-width:850px){.trip-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.trip-fields,.trip-stop-grid{grid-template-columns:1fr}.trip-day-heading{align-items:flex-start;flex-direction:column}.trip-replacements{padding:14px}.trip-photo img{height:210px}.trip-actions button{max-width:100%}.trip-card-copy{padding:18px}.trip-planner{overflow-wrap:anywhere}}@media print{body:has(.trip-page){background:white}.trip-no-print,.trip-page>.kg-page-head,body:has(.trip-page) .site-header,body:has(.trip-page) footer{display:none!important}.trip-caution,.trip-page,.trip-planner,.trip-stop{background:white!important;color:#111!important}.trip-planner{width:100%;padding:0;max-width:none}.trip-print-only,.trip-print-url,.trip-stop-grid{display:block}.trip-stop{border:0;border-bottom:1px solid #aaa;border-radius:0;page-break-inside:auto;break-inside:auto;margin-bottom:12px}.trip-photo{display:none}.trip-card-copy{padding:0 0 12px}.trip-stop>h3{background:white;color:#111;padding:8px 0}.trip-card-copy h4,.trip-day-heading h3{page-break-after:avoid;break-after:avoid}.trip-day{page-break-before:always;break-before:page;margin:0}.trip-links a[href^=http]:after{content:" (" attr(href) ")";font-size:9pt;overflow-wrap:anywhere}.trip-results dl,.trip-results p{font-size:10pt;line-height:1.45}.trip-stop-empty{display:none}.trip-caution{border:1px solid #aaa;padding:10px}.trip-day-heading{display:block}.trip-results>header h2{font-size:24pt}.trip-print-url{font-size:9pt;overflow-wrap:anywhere}}