/* Shared visual edition: illustrated guide index and the homepage journal. */
.travel-editorial .story-carousel{grid-column:1/-1;min-width:0}
.story-toolbar,.story-bottom{display:flex;align-items:center;gap:18px;justify-content:space-between}
.story-toolbar{margin:0 0 20px;font-size:12px;letter-spacing:.1em}
.story-toolbar>a{font-size:14px;letter-spacing:0;text-decoration:underline;text-underline-offset:5px}
.story-viewport{overflow:hidden;border-radius:10px;touch-action:pan-y}
.story-track{display:flex;gap:24px;will-change:transform}
.story-card{flex:0 0 calc((100% - 24px)/2);height:510px;min-width:0;isolation:isolate;display:block;user-select:none;animation:none!important}
.story-card img{filter:none;transition:transform 1.2s ease;object-fit:cover}
.story-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03) 10%,rgba(5,22,28,.1) 32%,rgba(5,22,28,.88) 100%);z-index:0;pointer-events:none}
.story-card>div{z-index:1;inset:32px;pointer-events:none}
.story-card h3{font-size:clamp(40px,4.8vw,65px);margin:14px 0 15px;line-height:1.1}
.story-card p{font-size:16px;line-height:1.5;max-width:380px;margin:0 0 24px}
.story-card>div>.story-read{font-size:13px;letter-spacing:0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff65;padding-top:18px}
.story-read b{font-size:27px;font-weight:300}
.story-card:focus-visible{outline:3px solid #efb276;outline-offset:-6px}
.story-bottom{padding:22px 0 8px}
.story-progress{display:flex;gap:7px;max-width:230px;flex:1}
.story-progress span{height:2px;flex:1;background:#d9d6d2;position:relative;overflow:hidden}
.story-progress .current{background:#8eaca5}
.story-progress .current::after{content:"";position:absolute;inset:0;background:#b95725;transform-origin:left}
.story-playing .story-progress .current::after{animation:story-time 5.2s linear both}
@keyframes story-time{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.story-count{font-size:12px;color:#666;letter-spacing:.1em;margin-left:auto;font-variant-numeric:tabular-nums}
.story-buttons{display:flex;gap:8px}
.story-buttons button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #d7d8d4;border-radius:50%;background:#fff;color:#183c34;font-size:22px;cursor:pointer;padding:0}
.story-buttons [data-story="pause"]{font-size:13px}
.story-buttons button:hover{background:#193f32;color:#fff}
.story-buttons button:disabled{opacity:.4;cursor:default}
.story-buttons button:focus-visible,.story-toolbar a:focus-visible{outline:2px solid #b95725;outline-offset:3px}
.story-credits{font-size:11px;color:#666;margin-top:14px;line-height:1.6}
.story-credits summary{cursor:pointer;width:fit-content}
.story-credits p{max-width:760px;margin:8px 0}.story-credits a{text-decoration:underline}
body[data-legal-page] .guide-card-illustrated{padding:0 26px 28px;min-height:400px;gap:17px}
body[data-legal-page] .guide-card-illustrated>img{display:block;width:calc(100% + 52px);max-width:none;margin:0 -26px 6px;height:220px;object-fit:cover;transition:transform .8s}
body[data-legal-page] .guide-card-illustrated:hover>img{transform:scale(1.025)}
body[data-legal-page] .guide-card-illustrated h3{font-size:28px;margin:0}
body[data-legal-page] .guide-edition-meta{font-family:var(--font-travel);font-size:11px;letter-spacing:.1em;color:#817164;border-top:1px solid #e5e4e4;padding-top:22px}
.guide-contents{background:#f6f5f3;border:1px solid #e5e4e4;border-radius:8px;padding:18px 22px;margin:24px 0 30px;font-family:var(--font-travel);font-size:14px}
.guide-contents summary{cursor:pointer;color:#193f32}.guide-contents ol{margin:16px 0 0;padding-left:20px}.guide-contents li{margin:8px 0}
body[data-legal-page] .guide-photo img{width:100%;height:auto;max-height:650px;object-fit:contain;background:#f6f5f3}
body[data-legal-page] .guide-body h2{scroll-margin-top:115px}
@media(max-width:900px){.story-card{height:460px}.story-card>div{inset:25px}.story-card p{font-size:15px}}
@media(max-width:600px){.story-toolbar{font-size:10px;letter-spacing:.06em}.story-toolbar>a{font-size:12px}.story-track{gap:16px}.story-card{flex-basis:100%;height:460px}.story-card h3{font-size:54px}.story-card>div{inset:27px}.story-card p{font-size:16px}.story-bottom{gap:14px}.story-count{font-size:10px}.story-buttons{gap:5px}.story-progress{max-width:100px}.story-buttons button{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.story-playing .story-progress .current::after{animation:none}.story-card img,body[data-legal-page] .guide-card-illustrated>img{transition:none}}
.reduce-motion .story-playing .story-progress .current::after{animation:none}.reduce-motion .story-card img{transition:none}
