/* Shared touch comfort, map chrome and practical-information composition. */
.dc-map-card{overflow:hidden;border:1px solid var(--line);background:var(--soft);border-radius:var(--radius,6px)}.dc-themed-map{height:350px;width:100%;position:relative;background:var(--soft);isolation:isolate;z-index:0}.dc-map-dark .leaflet-tile-pane{filter:grayscale(1) invert(1) contrast(.85) brightness(.85)}.dc-map-light .leaflet-tile-pane{filter:grayscale(.8)}.dc-themed-map .leaflet-control-attribution{background:var(--paper);color:var(--muted);padding:3px 8px;font:11px/1.5 sans-serif}.dc-themed-map .leaflet-control-attribution a{color:var(--ink)}.dc-themed-map .leaflet-bar{border:1px solid var(--line);box-shadow:none}.dc-themed-map .leaflet-bar a{background:var(--paper);color:var(--ink);border-color:var(--line);width:36px;height:36px;line-height:36px;font-family:sans-serif}.dc-themed-map .leaflet-bar a:hover{background:var(--soft)}.dc-map-marker{background:none;border:0}.dc-map-marker>span{display:block;width:28px;height:28px;background:var(--accent);border:3px solid var(--paper);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 8px #0006}.dc-map-marker>span:after{content:'';display:block;width:7px;height:7px;border-radius:50%;background:var(--paper);margin:7px}.dc-map-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px}.dc-map-place{display:flex;align-items:center;gap:10px;font:500 15px/1.5 var(--font-body,serif)}.dc-map-place>svg{width:20px;height:20px;color:var(--accent);flex:none}.dc-map-caption .text-link{font-size:14px}.dc-map-interact{position:absolute;z-index:500;inset:auto auto 24px 50%;transform:translateX(-50%);border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);padding:10px 18px;font:500 14px/1.4 var(--font-interface,sans-serif);white-space:nowrap}.db-practical-information h2{margin-bottom:28px}.db-practical-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.db-practical-cards article:before{content:'';display:block;width:32px;height:2px;background:var(--accent);margin-bottom:18px}.db-practical-cards h3{font-size:19px;margin-bottom:12px}.db-practical-cards p{font-size:15px;line-height:1.65;margin:0}.dc-result-summary{display:grid;gap:10px;margin:22px 0 26px}.dc-result-summary>div{display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding-bottom:10px}.dc-result-summary dt{color:var(--muted)}.dc-result-summary dd{margin:0;text-align:right;font-weight:600}
@media(max-width:760px){body.declic-site .mobile-nav>a:not(.button){min-height:44px;display:flex;align-items:center;padding-block:8px}body.declic-site .mobile-nav{gap:4px}body.declic-site .db-section-links a{min-height:44px;display:flex;align-items:center}body.declic-site .db-section-links nav{gap:4px 16px}body.declic-site .db-booking-panel .dv-reservation-fields :is(input,textarea,select){font-size:16px}body.declic-site .contact-panel :is(input,textarea,select){font-size:16px}.dc-themed-map{height:280px}.dc-map-caption{align-items:flex-start;flex-direction:column;padding:16px;gap:14px}.dc-themed-map .leaflet-bar a{width:40px;height:40px;line-height:40px}.db-practical-cards{grid-template-columns:1fr;gap:28px}.db-practical-information h2{font-size:27px}.dc-result-summary{font-size:15px}}
.dc-result-summary[hidden]{display:none}

/* Explicit builder choices override theme defaults; normal spacing keeps each composition. */
body.declic-site .dv-block[data-composition]{background-color:var(--paper)}
body.declic-site .dv-block.soft[data-composition]{background-color:var(--soft)}
body.declic-site .dv-block.dv-space-compact{padding-block:20px!important}
body.declic-site .dv-block.dv-space-large{padding-block:72px!important}
@media(max-width:760px){body.declic-site .dv-block.dv-space-compact{padding-block:16px!important}body.declic-site .dv-block.dv-space-large{padding-block:48px!important}}

.db-mobile-action{display:none}
@media(max-width:760px){body.declic-site.db-mobile-action-sticky{padding-bottom:86px}.db-mobile-action{display:block;position:fixed;inset:auto 0 0;z-index:110;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 96%,transparent);border-top:1px solid var(--line)}.db-mobile-action .button{display:flex;width:100%;min-height:46px}body.declic-site:has(.dc-reservation-form){padding-bottom:0}body.declic-site:has(.dc-reservation-form) .db-mobile-action{display:none}}

.db-mobile-action[hidden]{display:none!important}
