.shop-detail{container-type:inline-size}.shop-detail__header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-block-end:1.5rem;@container (width < 768px){align-items:center;flex-direction:column}}.shop-detail__title{display:flex;flex-direction:column;gap:.25rem;margin:0;@container (width < 768px){align-self:flex-start}}.shop-detail__title-name{font-size:inherit;font-weight:inherit;margin:0}.shop-detail__reserve-btn{flex-shrink:0;min-width:15rem;text-align:center}.shop-detail__gallery{display:flex;gap:1rem;margin-block-end:2rem}.shop-detail__gallery-item{aspect-ratio:4/3;background-color:var(--color-lite-gray);border-radius:.25rem;max-width:300px;overflow:hidden}.shop-detail__gallery-item img{cursor:pointer;height:100%;object-fit:cover;width:100%}.shop-detail__gallery-modal{background:transparent;border:none;margin:auto;max-height:70vh;max-width:70vw;overflow:hidden;padding:0;@media (width < 768px){max-width:92dvw;width:100dvw}@media (width >= 768px){width:min(500px,80vw)}}.shop-detail__gallery-modal::backdrop{background:rgba(0,0,0,.6)}.shop-detail__gallery-modal-inner{background:var(--color-white)}.shop-detail__gallery-modal-header{align-items:center;background:var(--color-white);display:flex;justify-content:flex-end;padding:8px min(4vw,15px);position:relative}.shop-detail__gallery-modal-close{background:transparent;border:none;cursor:pointer;padding:initial}.shop-detail__gallery-modal-body{background:var(--color-white);padding:0 min(4vw,15px) min(8vw,30px);@media (width >= 768px){padding-bottom:30px;padding-left:50px;padding-right:50px;padding-top:0}}.shop-detail__gallery-modal-body img{aspect-ratio:4/3;display:block;object-fit:contain;width:100%}.shop-detail__info{margin-block-end:2rem}.shop-detail__info-list{margin:0}.shop-detail__info-row{border-block-end:1px solid var(--color-lite-gray);display:grid;gap:1.5rem;grid-template-columns:6rem 1fr;padding-block:1.5rem;padding-inline:3rem;@container (width < 768px){gap:.5rem;grid-template-columns:1fr;padding-inline:0}&:first-child{border-block-start:1px solid var(--color-lite-gray)}dt{font-weight:var(--font-weight-bold)}dd,dt{color:var(--color-dark-gray)}dd{margin:0}}.shop-detail__info-row--access{align-items:start;dd{display:flex;flex-direction:column;gap:1rem;p:first-child{margin:0}}}.shop-detail__map{padding-inline-end:1.5rem;@container (width < 768px){padding-inline-end:0}}.shop-detail__map-canvas{aspect-ratio:16/9;border:0;border-radius:.25rem;height:auto;width:100%}.shop-detail__notes{list-style:none;margin:0;padding:0;li{margin-block-end:.25rem}}.shop-detail__notes-small{color:var(--color-gray);font-size:var(--font-size-small);margin-block:0;margin-inline:0}.shop-detail__reserve-bottom{display:flex;justify-content:center;margin-block-end:2rem}.shop-detail__campaign{padding-block:3rem}.shop-detail__campaign-header{align-items:center;display:flex;gap:.5rem;margin-block-end:1.5rem;h2{margin:0}}.shop-detail__campaign-more{margin-block-start:1.5rem}.shop-detail__more-btn{align-items:center;display:flex;justify-content:center;padding-inline-end:2em;position:relative}.shop-detail__more-btn::after{border-block-start:2px solid var(--color-dark-gray);border-inline-end:2px solid var(--color-dark-gray);content:"";height:.5em;inset-inline-end:1em;position:absolute;transform:rotate(45deg);width:.5em}.shop-detail__message{background-color:var(--color-ultra-lite-gray);border-radius:.5rem;margin-block-end:2rem;padding:1.5rem}.shop-detail__message-title{margin-block-end:1rem;margin-block-start:0}.shop-detail__message-content{line-height:1.8;margin:0}.shop-detail__back{margin-block-end:2rem}.shop-detail__back-link{align-items:center;border:1px solid var(--color-lite-gray);border-radius:.25rem;color:var(--color-dark-gray);display:inline-flex;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:background-color .2s;&:hover{background-color:var(--color-ultra-lite-gray)}}.shop-detail__zip{color:var(--color-gray);font-size:var(--font-size-small)}.shop-detail__map-link{color:var(--color-red);font-size:var(--font-size-small);text-decoration:none;&:hover{text-decoration:underline}}