/* Compact inspiration, clear selections, and a focused booking request. */
[hidden]{display:none!important}
.place-group .place-description:not([open])>summary:after{content:'+'}.place-group .place-description[open]>summary:after{content:'−'}
.place-group .place-description summary{text-decoration:none}.place-description summary span{text-decoration:underline;text-underline-offset:3px}
.map-viewport{--map-fit-height:440px}.map-viewport svg{max-height:var(--map-fit-height)}.map-place-card .map-card-number{display:none}.map-place-card h4{font-size:24px}.map-place-card #map-card-description{font-size:12px;line-height:1.65}.map-place-card .map-destination-photo{margin-top:14px}
@media(max-width:700px){.map-viewport{--map-fit-height:350px}.map-place-card #map-card-description{font-size:13px}}
.day-examples{border-top:1px solid #5b7367;margin-top:32px;padding-top:26px}.day-examples-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:18px 0}.day-examples h4{font:400 23px/1.3 'Playfair Display',Georgia,serif;margin-bottom:10px}.day-examples p{color:#c9d4c9;font-size:13px;line-height:1.65}.day-examples>p{font-size:11px;max-width:850px}
.destination-card .destination-photo>img{aspect-ratio:2;max-height:220px}.destination-card .coffee-pair img{max-height:230px;aspect-ratio:3/4}.place-description{padding:0 0 12px 47px;margin-top:12px}.place-group .place-description summary{font:12px/1.5 'DM Sans',sans-serif;padding:8px 0;justify-content:start;gap:12px;text-decoration:underline;text-underline-offset:3px}.place-group .place-description summary:after{font-size:16px}.place-description p{font-size:13px;line-height:1.7;color:var(--muted);padding-top:9px}.destination-card .place-item{padding-top:12px}.place-toggle{margin-top:14px}.place-groups{gap:22px}
.map-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start}.map-paper{align-self:start}.map-viewport{max-height:450px}.map-destination-photo img{aspect-ratio:1.85}.map-destination-photo img[data-framing=portrait]{aspect-ratio:1.85;max-height:190px}.map-place-card #map-card-description{margin-bottom:12px}.map-more{width:100%;margin:0 0 18px}.map-more summary{font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:8px 0}.map-more p{font-size:12px;line-height:1.7;color:var(--muted);margin-top:8px}
.has-trip .floating,.has-trip .mobile-bar{display:none}.trip-bar{position:fixed;left:0;right:0;bottom:0;z-index:25;background:var(--cream);border-top:1px solid var(--line);box-shadow:0 -4px 25px #17382f10;padding:12px 5% calc(12px + env(safe-area-inset-bottom))}.trip-bar-inner{max-width:1100px;margin:auto;position:relative;display:flex;align-items:center;gap:25px}.trip-bar-inner>div:first-child{margin-right:auto}.trip-bar strong{display:block;font:400 21px/1.2 'Playfair Display',Georgia,serif}.trip-bar #trip-count{font-size:11px;color:var(--muted);display:block;margin-top:4px}.trip-bar .btn{font-size:13px;white-space:normal;min-height:48px}.trip-review-button{background:none;border:0;border-bottom:1px solid var(--line);font-size:12px;padding:12px 0;color:var(--ink)}.trip-picked{position:absolute;bottom:calc(100% + 24px);right:0;max-height:45dvh;overflow:auto;background:var(--cream);border:1px solid var(--line);box-shadow:0 8px 40px #0002;padding:10px 16px;width:min(420px,100%)}.trip-picked ul{list-style:none;margin:0;padding:0}.trip-picked li{display:flex;align-items:center;gap:15px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.trip-picked li span{flex:1}.trip-picked li button{background:none;border:0;color:var(--rust);font-size:24px;min-width:44px;min-height:44px}.trip-bar button:focus-visible{outline:2px solid var(--rust);outline-offset:3px}
.booking-progress{display:flex;list-style:none;padding:0;margin:0 0 25px;gap:12px}.booking-progress li{flex:1;font-size:10px;color:var(--muted);display:flex;gap:7px;align-items:center;line-height:1.4}.booking-progress li>span{border:1px solid var(--line);width:25px;height:25px;display:grid;place-items:center;flex-shrink:0;border-radius:50%}.booking-progress li[aria-current=step]{color:var(--ink);font-weight:500}.booking-progress li[aria-current=step]>span{background:var(--forest);color:var(--cream)}.booking-panel-title{font:400 25px/1.3 'Playfair Display',Georgia,serif;margin-bottom:20px}.booking-panel-title:focus{outline:none}.booking-navigation{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px}.booking-navigation .btn{margin-left:auto;min-height:48px;font-size:14px}.booking-navigation #booking-back{background:none;border:0;color:var(--ink);padding:12px 0;cursor:pointer}.pickup-unknown{grid-column:1/-1;display:flex;gap:10px;align-items:start;font-size:13px;line-height:1.5}.pickup-unknown input{width:20px;height:20px;flex-shrink:0;accent-color:var(--forest)}.form-grid>.booking-hint.full{grid-column:1/-1;margin:0}.request-overview{display:grid;grid-template-columns:110px 1fr;gap:8px 15px;font-size:12px;margin-bottom:22px}.request-overview dt{color:var(--muted)}.request-overview dd{margin:0;overflow-wrap:anywhere}.service-details{margin-top:12px}.service-details summary{font-size:12px;cursor:pointer;padding:7px 0}.booking-panel .booking-summary p{font-size:13px}.booking-panel .form-grid{margin-bottom:15px}#planner .status:empty{display:none}.booking-navigation button:focus-visible{outline:2px solid var(--rust);outline-offset:3px}
@media(max-width:1000px){.map-layout{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:700px){.day-examples-grid{grid-template-columns:1fr;gap:18px}.day-examples h4{font-size:21px}.destination-card .destination-photo>img{aspect-ratio:1.8;max-height:none}.destination-card .coffee-pair img{max-height:200px;aspect-ratio:3/4}.place-description{padding-left:0}.place-group .place-description summary{font-size:13px;min-height:44px}.map-layout{grid-template-columns:1fr}.map-viewport{max-height:360px}.map-place-card{padding:16px}.map-destination-photo img{aspect-ratio:1.9}.map-destination-photo img[data-framing=portrait]{aspect-ratio:1.9;max-height:210px}.trip-bar{padding-left:4%;padding-right:4%}.trip-bar-inner{gap:10px;flex-wrap:wrap}.trip-bar strong{font-size:18px}.trip-bar .btn{width:100%;font-size:13px;min-height:46px;padding:11px 12px}.trip-review-button{font-size:11px;padding:7px 0;min-height:36px}.trip-picked{bottom:calc(100% + 20px);width:100%;left:0}.booking-progress{gap:7px;margin-bottom:20px}.booking-progress li{flex-direction:column;align-items:start;font-size:10px}.booking-panel-title{font-size:25px}.request-overview{grid-template-columns:85px 1fr}.booking-navigation .btn{padding:12px 20px}.has-trip .footer{padding-bottom:150px}}

.destination-card .destination-photo>img[src="/assets/photos/table-960.webp"]{object-fit:contain;aspect-ratio:1.8;max-height:260px;background:#e8e3d6}

.footer-right{flex-wrap:wrap}.creator-credit{color:var(--muted);text-decoration:underline;text-underline-offset:3px}.creator-credit:hover{color:var(--ink)}

/* Mobile: creator credit on its own centred line. */
@media(max-width:700px){.footer-right{width:100%}.creator-credit{width:100%;text-align:center}}
