/* Small travel tools, scoped to the new editorial articles. */
.trip-tool { margin: 36px 0; padding: clamp(22px,4vw,38px); background: #edf1e8; border: 1px solid #cfdbce; border-radius: 4px; color:#173431; }
.article-body .trip-tool h2 { margin: 9px 0 17px; font-size: clamp(25px,3vw,34px); }
.trip-tool details { padding: 15px 0; border-top: 1px solid #b9caba; }
.trip-tool summary { cursor: pointer; font-weight: 600; line-height:1.5; padding:5px 0; }
.trip-tool details[open] p { animation:trip-appear .25s ease-out; }
.trip-tool p { font-size:16px; line-height:1.7; }
.trip-checks { display:grid; gap:12px; }
.trip-checks label { display:flex; align-items:flex-start; gap:12px; padding:11px 12px; background:#fffaf0; font-size:16px; line-height:1.5; cursor:pointer; border-radius:3px; }
.trip-checks input { width:20px; height:20px; flex:0 0 20px; margin-top:2px; accent-color:#315e4b; }
.trip-checks label:has(input:checked) { background:#d8e5d3; }
.trip-checks input:checked + span { text-decoration:line-through; text-decoration-color:#557761; }
.trip-range { display:flex; align-items:center; gap:20px; margin:20px 0; }
.trip-range input { min-width:0; width:100%; accent-color:#315e4b; cursor:pointer; }
.trip-range output { font-size:27px; min-width:45px; text-align:center; font-variant-numeric:tabular-nums; }
.trip-calculator>label { font-size:16px; display:block; }
.trip-result { padding:18px; border-left:3px solid #a68448; background:#fffaf0; }
.trip-reset { cursor:pointer; border:1px solid #315e4b; color:#fffaf0; background:#315e4b; border-radius:3px; padding:11px 17px; font:inherit; font-size:14px; }
.trip-tool .trip-small { font-size:13px; color:#52665b; margin-bottom:0; }
.trip-tool :focus-visible { outline:3px solid #9b6529; outline-offset:4px; }
.trip-tool:not([data-enhanced]) .trip-reset,.trip-tool:not([data-enhanced]) .trip-status { display:none; }
@keyframes trip-appear { from {opacity:.45;transform:translateY(5px)} to {opacity:1;transform:none} }
@media(prefers-reduced-motion:reduce) { .trip-tool *, .trip-tool *::before,.trip-tool *::after { animation:none!important;transition:none!important; } }
