@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f7f5f0;--ink:#25221e;--muted:#70675d;--line:#d9d2c7;--sand:#eae3d7;--accent:#8e6549}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 'DM Sans',Arial,sans-serif}button,a,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:4px}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}header{max-width:1280px;margin:auto;padding:28px 48px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:24px;letter-spacing:4px;font-weight:600;line-height:1.2}.brand span{display:block;font-size:10px;letter-spacing:3px;margin-top:9px}.author{font-size:14px;text-decoration:none}main{max-width:1280px;margin:auto;padding:0 48px}.intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;padding:45px 0 35px;align-items:center}.eyebrow{font-size:12px;letter-spacing:2px;margin:0 0 18px}h1{font:100px/.82 'Libre Caslon Display',Georgia,serif;letter-spacing:-3px;margin:0}h1 span{display:block;margin-left:55px}.dek{font-size:17px;line-height:1.6;margin:26px 0}.intro-bottom{display:flex;align-items:center;gap:22px}.intro-bottom p{font-size:13px;color:var(--muted)}.stamp{border:1px solid var(--accent);border-radius:50%;width:83px;height:83px;display:grid;place-content:center;text-align:center;font-size:10px;letter-spacing:1px;transform:rotate(-12deg);color:var(--accent)}figure{margin:0}figure img{width:100%;height:330px;object-fit:cover;display:block;border-radius:140px 140px 3px 3px;filter:saturate(.78)}figcaption{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:9px}.view-nav{display:flex;gap:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--paper);z-index:5}.view-nav button{border:0;background:none;padding:19px 0;font-size:14px;border-bottom:2px solid transparent}.view-nav button.active{border-bottom-color:var(--ink);font-weight:600}.view-nav span{background:var(--sand);border-radius:50%;padding:2px 7px;font-size:12px;margin-left:5px}.section-title{padding:30px 0 22px}h2{font:32px/1.15 'Libre Caslon Display',Georgia,serif;margin:0}.section-title p{font-size:14px;color:var(--muted);margin:8px 0 0}.day{border-top:1px solid var(--line)}.day:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.day>summary{display:flex;align-items:center;gap:22px;padding:24px 0}.day-num{font:38px/1 Georgia,serif;color:var(--accent);min-width:46px}.day-title{flex:1}.day-title h3{font-size:19px;font-weight:500;margin:0}.day-title p{margin:3px 0 0;color:var(--muted);font-size:13px}.day-tag{font-size:11px;border:1px solid var(--line);padding:5px 10px;border-radius:20px;white-space:nowrap}.plus{font-size:25px;font-weight:400;margin-left:8px}.day[open]>summary .plus{transform:rotate(45deg)}.day-content{padding:0 0 30px 68px}.day-note{font-size:14px;color:var(--muted);max-width:760px;margin:0 0 20px}.stop{border:1px solid var(--line);background:#fffdf9;margin:10px 0}.stop>.stop-summary{display:flex;gap:15px;padding:17px 20px;align-items:center}.stop-index{font-size:12px;color:var(--muted);min-width:20px}.stop-heading{flex:1}.stop-heading strong{font-size:16px;font-weight:500}.stop-heading small{font-size:12px;color:var(--muted);display:block;margin-top:2px}.stop-arrow{font-size:19px}.stop[open] .stop-arrow{transform:rotate(90deg)}.stop-body{padding:0 20px 20px 55px}.stop-body p{margin:0 0 14px;font-size:15px}.quote{border-left:2px solid var(--accent);padding:7px 0 7px 16px;font:23px/1.3 'Libre Caslon Display',Georgia,serif;margin:18px 0}.quote small{display:block;font:11px 'DM Sans',sans-serif;letter-spacing:1px;margin-top:8px;color:var(--muted)}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.actions button,.actions a,.route,.pending-link{border:1px solid var(--line);background:transparent;padding:9px 12px;border-radius:3px;font-size:13px;text-decoration:none}.actions button.selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}.actions a{margin-left:auto}.route{display:inline-block;margin:5px 8px 12px 0;font-size:12px}.next-time{margin:32px 0;background:var(--sand);padding:22px}.next-time summary{display:flex;justify-content:space-between;font:25px 'Libre Caslon Display',Georgia,serif}.next-time p{font-size:15px;max-width:750px}.pending-link{display:inline-block;margin:0 6px 5px 0}.tips-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px}.tips-grid article{border-top:1px solid var(--line);padding:22px 0}.tips-grid article>span{font-size:12px;color:var(--accent)}.tips-grid h3{font:27px 'Libre Caslon Display',Georgia,serif;margin:8px 0}.tips-grid p{font-size:15px;margin:0 0 8px}.tips-grid a{font-size:14px}.editor-note{font-size:13px;color:var(--muted);background:var(--sand);padding:20px;margin:25px 0}.empty{padding:45px 20px;text-align:center;background:var(--sand);margin-bottom:30px}.empty h3{font:30px 'Libre Caslon Display',Georgia,serif;margin:0 0 10px}.empty button{border:0;border-bottom:1px solid;background:none;margin-top:10px}footer{border-top:1px solid var(--line);padding:30px 0;display:flex;align-items:center;gap:30px;margin-top:40px}footer .brand{font-size:17px}footer p{font-size:12px;color:var(--muted);flex:1}footer>a:last-child{font-size:11px;color:var(--muted)}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(100px);background:var(--ink);color:white;font-size:14px;padding:12px 20px;border-radius:4px;z-index:9;transition:transform .2s;width:max-content;max-width:90vw}#toast.show{transform:translateX(-50%) translateY(0)}[hidden]{display:none!important}@media(min-width:1100px){.intro{padding-top:40px}.intro>div{padding-left:20px}}@media(max-width:700px){header{padding:22px}.brand{font-size:19px;letter-spacing:3px}.brand span{font-size:9px}.author{font-size:12px}main{padding:0 22px}.intro{gap:20px;padding:28px 0;grid-template-columns:1fr 1fr}.eyebrow{font-size:9px;letter-spacing:1px;margin-bottom:15px}h1{font-size:58px;letter-spacing:-2px}h1 span{margin-left:15px}.dek{font-size:13px;margin:18px 0 0}.intro-bottom{display:none}figure img{height:220px;border-radius:90px 90px 2px 2px}figcaption{font-size:9px;display:block}figcaption span{display:none}.view-nav{gap:18px;justify-content:space-between}.view-nav button{font-size:12px;padding:16px 0}.view-nav span{font-size:10px;padding:2px 5px;margin-left:2px}h2{font-size:29px}.section-title p{font-size:13px}.day>summary{gap:12px;padding:20px 0}.day-num{font-size:31px;min-width:35px}.day-title h3{font-size:16px}.day-title p{font-size:12px}.day-tag{display:none}.day-content{padding-left:0}.stop>.stop-summary{padding:15px 12px;gap:9px}.stop-body{padding:0 14px 18px}.stop-heading strong{font-size:15px}.actions a{margin-left:0}.tips-grid{grid-template-columns:1fr}footer{flex-wrap:wrap;gap:12px}footer p{flex-basis:100%;order:2;margin:0}footer>a:last-child{margin-left:auto}.quote{font-size:22px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}} 

.place-links{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:20px;padding-top:15px;border-top:1px solid var(--line)}.place-links a{font-size:13px;color:var(--muted)}
.image-wrap{grid-column:1/-1;display:block;position:relative}.image-wrap small{position:absolute;bottom:8px;left:8px;right:8px;width:max-content;max-width:calc(100% - 16px);padding:4px 7px;background:#fffef5ed;color:#4c443a;font-size:10px;line-height:1.4;border-radius:2px}.image-wrap img{display:block}.photo-caption{display:none!important}
/* Photographic travel journal */
header{padding-top:12px;padding-bottom:18px}.brand img{width:235px;height:94px;object-fit:contain;display:block}.brand span{text-align:center;margin-top:-15px;font-size:10px}.intro{grid-template-columns:.8fr 1.2fr;gap:38px}.intro figure img{height:380px;border-radius:3px;filter:none}.intro h1{font-size:108px}.day{border:0;margin:18px 0 28px}.day:last-child{border:0}.day>summary{position:relative;isolation:isolate;overflow:hidden;min-height:165px;padding:26px 30px;color:white;border-radius:3px}.day>summary:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.67),rgba(0,0,0,.25));z-index:-1}.day-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.day-num{font:50px 'Libre Caslon Display',Georgia,serif;color:white}.day-title h3{font:32px/1.15 'Libre Caslon Display',Georgia,serif}.day-title p{color:#fff;font-size:14px;margin-top:9px}.day-tag{color:white;border-color:#ffffff80}.day-content{padding:25px 0 0}.day-note{max-width:850px;margin:0 0 18px}.stop-grid,#saved-list:has(.stop){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.stop{margin:0;border:0;background:transparent;border-bottom:1px solid var(--line);padding-bottom:10px}.stop>.stop-summary{display:grid;grid-template-columns:24px 1fr 20px;gap:12px;padding:0 0 12px;align-items:start}.stop-photo{grid-column:1/-1;width:100%;height:220px;object-fit:cover;border-radius:3px;transition:filter .2s}.stop>.stop-summary:hover .stop-photo{filter:brightness(.94)}.stop-index{margin-top:3px}.stop-heading strong{font-size:17px;line-height:1.3;display:block}.stop-heading small{font-size:13px;margin-top:6px}.stop-arrow{line-height:1.3}.stop-body{padding:0 0 12px}.stop-body p{font-size:15px}.photo-caption{display:block;font-size:11px;color:var(--muted);margin:0 0 15px}.quote{margin:16px 0;font-size:24px}.actions{gap:6px}.actions button,.actions a{font-size:12px;padding:8px}.actions a{margin-left:0}.next-time{position:relative;padding:24px 24px 24px 240px;min-height:190px;overflow:hidden}.pending-photo{position:absolute;left:0;top:0;width:210px;height:100%;object-fit:cover}.tips-grid{gap:28px}.tips-grid article{padding:0 0 20px;border-top:0}.tip-photo{width:100%;height:210px;object-fit:cover;margin-bottom:16px;border-radius:3px}.tips-grid article>span{display:block}footer .brand img{width:170px;height:68px}.photo-credits{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding:20px 0 30px}.photo-credits summary{font-size:14px}#credit-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.empty{grid-column:1/-1}.view-nav{box-shadow:0 4px 8px #f7f5f020}@media(max-width:1000px){.intro h1{font-size:84px}.intro figure img{height:330px}.stop-photo{height:185px}.day-title h3{font-size:29px}}@media(max-width:700px){header{padding:8px 22px 16px}.brand img{width:185px;height:74px}.brand span{font-size:9px;margin-top:-10px}.intro{grid-template-columns:1fr;gap:22px;padding:25px 0}.intro>div{position:relative}.intro h1{font-size:74px;line-height:.9}.intro h1 span{display:inline;margin:0}.dek{font-size:15px;margin-top:16px}.intro figure img{height:250px}.intro figcaption{font-size:11px;display:flex}.intro figcaption span{display:inline}.day>summary{min-height:155px;padding:22px 18px;gap:12px}.day-title h3{font-size:27px}.day-title p{font-size:12px}.day-num{font-size:40px;min-width:32px}.day-content{padding:20px 0 0}.stop-grid,#saved-list:has(.stop){grid-template-columns:1fr;gap:25px}.stop-photo{height:230px}.stop-heading strong{font-size:18px}.stop-heading small{font-size:13px}.stop-body p{font-size:16px}.actions button,.actions a{font-size:13px;padding:10px}.next-time{padding:185px 20px 22px}.pending-photo{height:160px;width:100%}.tips-grid{gap:22px}.tip-photo{height:220px}.photo-credits #credit-list{grid-template-columns:1fr}footer .brand img{width:150px;height:60px}}@media(max-width:380px){.intro h1{font-size:65px}.author{font-size:11px}.brand img{width:165px;height:66px}}

.next-time h2{font-size:27px;line-height:1.2;margin:0 0 12px}footer{flex-wrap:wrap}footer .photo-credits{border:0;padding:0;margin-left:auto;max-width:100%}footer .photo-credits summary{font-size:12px;text-decoration:underline;text-underline-offset:4px;text-align:right}footer .photo-credits[open]{flex-basis:100%;margin-top:12px}footer #credit-list{padding:18px 0;overflow-wrap:anywhere}footer .photo-credits[open] summary{text-align:left}@media(max-width:700px){footer .photo-credits{order:3;flex-basis:100%;margin-top:12px}footer .photo-credits summary{text-align:left}.next-time h2{font-size:26px}}
.photo-gallery{margin:22px 0}.gallery-label{display:flex;justify-content:space-between;gap:12px;font-size:13px!important;color:var(--muted)}.gallery-label span{white-space:nowrap;font-size:12px}.gallery-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 10px;scrollbar-width:thin}.gallery-thumb{flex:0 0 140px;scroll-snap-align:start;border:0;background:none;padding:0;text-align:left}.gallery-thumb img{width:140px;height:180px;object-fit:cover;border-radius:3px}.gallery-thumb span{display:block;font-size:11px;line-height:1.4;color:var(--muted);margin-top:7px}.gallery-thumb:hover img{filter:brightness(.95)}#photo-viewer{width:min(1000px,96vw);max-width:96vw;height:min(900px,94dvh);max-height:94dvh;border:0;border-radius:4px;padding:18px;background:var(--paper);color:var(--ink);overflow:hidden}#photo-viewer::backdrop{background:#15130feb}#photo-viewer[open]{display:flex;flex-direction:column;gap:12px}#viewer-image{display:block;flex:1;min-height:0;width:100%;object-fit:contain}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.viewer-top button,.viewer-bottom button{background:transparent;border:1px solid var(--line);padding:8px 12px;border-radius:3px;font-size:14px}.viewer-top span,.viewer-bottom p{font-size:13px;margin:0}.viewer-bottom p{text-align:center}.viewer-bottom button:disabled{opacity:.35;cursor:default}body:has(#photo-viewer[open]){overflow:hidden}#credit-list{display:block}#credit-list p{font-size:13px}@media(max-width:700px){#photo-viewer{padding:12px}.viewer-bottom{flex-wrap:wrap}.viewer-bottom p{order:-1;flex-basis:100%}.gallery-thumb{flex-basis:130px}.gallery-thumb img{width:130px;height:170px}.stop-photo{height:280px}}

/* Keep intrinsic photo widths inside their accordion and grid tracks. */
.day-content,.stop-grid,.stop,.stop-body,.stop-heading,.image-wrap,.photo-gallery,.gallery-strip,.day-title{min-width:0;max-width:100%}
.stop>.stop-summary{grid-template-columns:24px minmax(0,1fr) 20px}
.stop-heading,.day-title,.place-links a{overflow-wrap:anywhere}
.gallery-strip{overscroll-behavior-x:contain}
@media(max-width:700px){
  body{font-size:17px;line-height:1.6}
  .stop-grid,#saved-list:has(.stop),.tips-grid{grid-template-columns:minmax(0,1fr)}
  .intro{grid-template-columns:minmax(0,1fr)}
  .intro h1{font-size:clamp(54px,18vw,74px)}
  .dek,.stop-body p,.day-note,.next-time p,.tips-grid article p{font-size:17px;line-height:1.65}
  .section-title p{font-size:16px}
  .eyebrow{font-size:12px}
  .author{font-size:14px}
  header{gap:12px;flex-wrap:wrap}
  .view-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .view-nav button{min-width:0;font-size:14px;line-height:1.4;min-height:54px;white-space:normal}
  .view-nav span{font-size:12px}
  .day-title h3{font-size:29px}
  .day-title p,.stop-heading small{font-size:14px;line-height:1.5}
  .stop-heading strong{font-size:20px}
  .actions{flex-wrap:wrap}
  .actions button,.actions a{font-size:15px;min-height:44px;padding:10px 12px}
  .place-links a{font-size:15px;min-height:44px;display:inline-flex;align-items:center}
  .gallery-label{font-size:15px!important;flex-wrap:wrap;gap:4px 12px}
  .gallery-label span,.gallery-thumb span,.intro figcaption{font-size:13px}
  .gallery-thumb{min-width:0}
  .viewer-top button,.viewer-bottom button{font-size:16px;min-height:44px}
  .viewer-top span,.viewer-bottom p,footer p,#credit-list p{font-size:14px}
  footer .photo-credits summary{font-size:14px;min-height:44px;padding:10px 0}
}

/* Real-puppy reactions stay small and never change accordion widths. */
.puppy-reaction{display:flex;align-items:center;gap:18px;max-width:100%;min-width:0;margin:26px 0 8px}
.puppy-reaction a{display:block;flex:0 0 120px}
.puppy-reaction img{display:block;width:120px;height:120px;object-fit:cover;border-radius:8px}
.puppy-reaction p{font-size:16px!important;line-height:1.5;max-width:260px;margin:0;color:var(--muted)}
footer .puppy-reaction{flex-basis:100%;margin:0 0 12px;order:0}
footer .puppy-reaction p{flex:initial}
@media(max-width:700px){.puppy-reaction{gap:14px}.puppy-reaction a{flex-basis:100px}.puppy-reaction img{width:100px;height:100px}.puppy-reaction p{font-size:16px!important}}

.view-nav button{font-size:17px}
@media(max-width:700px){.view-nav{gap:10px}.view-nav button{font-size:16px;line-height:1.4;min-height:62px}.view-nav span{font-size:13px}}
footer .collaborator-credits{flex-basis:100%;font-size:14px;line-height:1.6;margin:8px 0}
.image-wrap:empty{display:none}

/* Simplified day labels and single-line navigation. */
.stop>.stop-summary{grid-template-columns:minmax(0,1fr) 20px}
.day-num{font:600 18px/1.2 'DM Sans',Arial,sans-serif;white-space:nowrap;min-width:0;letter-spacing:.04em}
.view-nav button{display:flex;align-items:center;justify-content:center;white-space:nowrap;gap:4px}
.view-nav span{flex-shrink:0;margin-left:0}
@media(max-width:700px){
.view-nav{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none}
.view-nav::-webkit-scrollbar{display:none}
.view-nav button{flex:1 0 auto;font-size:clamp(13px,3.5vw,16px);white-space:nowrap;min-height:58px}
.view-nav span{font-size:11px;padding:1px 4px}
.day>summary{flex-wrap:wrap;gap:10px}
.day-num{flex-basis:100%;font-size:16px}
.day-title{min-width:0}
}

/* Brand accent, generous desktop photographs and subtle loading state. */
.view-nav button.active{border-bottom-color:var(--accent)}
.actions button.selected{background:var(--accent);border-color:var(--accent)}
@media(min-width:701px){
.stop-photo,.tip-photo{height:auto;aspect-ratio:3/2;object-fit:cover}
.intro figure img{height:auto;aspect-ratio:3/2;object-fit:cover}
.day>summary{min-height:0;aspect-ratio:3/1}
}
img.photo-loading{background:linear-gradient(100deg,#e6e6e6 20%,#f2f2f2 45%,#e6e6e6 70%);background-size:250% 100%;animation:photo-shimmer 1.8s ease-in-out infinite;color:transparent}
@keyframes photo-shimmer{from{background-position:100% 0}to{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){img.photo-loading{animation:none}}

.intro figure{position:relative}
#cover-video{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:3px;background:center/cover url('assets/tefi/080.jpg')}
@media(max-width:700px){
.intro figure{margin-inline:-22px;width:calc(100% + 44px);max-width:none}
#cover-video{height:auto;aspect-ratio:6/5;border-radius:0}
}

.stop>.stop-summary{grid-template-columns:minmax(0,1fr);cursor:default}
.stop>.stop-summary::marker{content:""}

/* Keep the caption beside the actual image, including landscape shots. */
#photo-viewer{height:auto}
#photo-viewer[open]{gap:12px}
.viewer-media{margin:0;display:flex;flex-direction:column;align-items:center;gap:8px;min-height:0;touch-action:pan-y pinch-zoom}
#viewer-image{flex:none;display:block;width:auto;height:auto;max-width:100%;max-height:calc(94dvh - 180px);object-fit:contain;border-radius:3px;filter:none}
#viewer-caption{display:block;margin:0;text-align:center;font:14px/1.4 'DM Sans',Arial,sans-serif;color:var(--muted);max-width:100%;overflow-wrap:anywhere}
.viewer-bottom{justify-content:space-between}
@media(max-width:700px){#viewer-caption{font-size:15px}#viewer-image{max-height:calc(94dvh - 190px)}}

/* Mobile photographs bleed to the screen edges; body copy keeps its inset. */
@media(max-width:700px){
.stop .image-wrap{margin-inline:-22px;width:calc(100% + 44px);max-width:none}
.stop-photo{border-radius:0}
.gallery-strip{margin-inline:-22px;width:calc(100% + 44px);max-width:none;padding-inline:22px;scroll-padding-inline:22px}
}
/* Native momentum and scroll snapping keep the next image visible during a swipe. */
#viewer-track{display:flex;width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}
#viewer-track::-webkit-scrollbar{display:none}
.viewer-slide{flex:0 0 100%;width:100%;min-width:0;height:min(72dvh,740px);scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin:0}
.viewer-slide img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100% - 56px);object-fit:contain;flex-shrink:1;min-height:0;border-radius:3px;filter:none}
.viewer-slide figcaption{display:block;margin:0;max-width:100%;padding:0 8px;text-align:center;font:14px/1.4 'DM Sans',Arial,sans-serif;color:var(--muted);overflow-wrap:anywhere}
@media(max-width:700px){#photo-viewer{padding:12px 0}.viewer-top,.viewer-bottom{padding-inline:12px}.viewer-slide{height:72dvh}.viewer-slide img{border-radius:0}.viewer-slide figcaption{font-size:15px}}

/* Solid close control: focus stays inside the button instead of a double border. */
#photo-close{background:var(--accent);color:#fff;border:0;border-radius:4px;box-shadow:none}
#photo-close:focus,#photo-close:focus-visible{outline:none;box-shadow:inset 0 0 0 2px #fff;text-decoration:underline;text-underline-offset:4px}
@media(hover:none){#photo-close:focus,#photo-close:focus-visible{box-shadow:none;text-decoration:none}}

/* Desktop day covers: centered hierarchy scaled to the photograph. */
@media(min-width:701px){
.day>summary{flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:14px;padding:36px 64px}
.day-num{font-size:22px;letter-spacing:.08em}
.day-title{flex:0 1 auto;width:100%}
.day-title h3{font-size:clamp(34px,4.2vw,54px);line-height:1.1}
.day-title p{font-size:18px;line-height:1.4;margin-top:14px}
.day-tag{font-size:14px;padding:6px 14px}
.day>summary .plus{display:none}
.day[open]>summary .plus{display:grid;place-items:center;position:absolute;right:20px;top:18px;width:44px;height:44px;margin:0;font-size:40px;line-height:1;transform:rotate(45deg)}
.day>summary:after{background:linear-gradient(90deg,#0005,#0007,#0005)}
}

#photo-close:focus,#photo-close:focus-visible{text-decoration:none}
@media(max-width:700px){
.day>summary .plus{display:none}
.day[open]>summary .plus{display:grid;place-items:center;position:absolute;right:12px;top:12px;width:44px;height:44px;margin:0;font-size:34px;line-height:1;transform:rotate(45deg)}
.day[open]>summary .day-num{padding-right:44px}
}

/* Inset the content below each desktop place photograph. */
@media(min-width:701px){
.stop .stop-heading{padding-inline:24px}
.stop .stop-body{padding-inline:24px}
}

/* Keep the sticky mobile navigation opaque across the full screen. */
@media(max-width:700px){
.view-nav{margin-inline:-22px;width:calc(100% + 44px);padding-inline:22px;background:var(--paper)}
}
