.detail-shop main{background:#f7f3ea;color:#142a44}
.detail-shop .hero{width:min(104.166667vw,100%);min-height:0;margin:0 auto;padding:5vw clamp(1.944444vw,5vw,5.972222vw) 8.888889vw;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(25vw,.7fr);gap:clamp(3.055556vw,6vw,6.666667vw);align-items:start;background:#f7f3ea}
.detail-shop .hero-visual{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.111111vw;overflow:visible;background:transparent}
.detail-shop .shop-gallery-item{margin:0;aspect-ratio:1/1;overflow:hidden;background-color:#e8e3d8;background-repeat:no-repeat;background-size:200% 200%;transition:filter .35s ease}
.detail-shop .shop-gallery-item-1{background-position:left top}
.detail-shop .shop-gallery-item-2{background-position:right top}
.detail-shop .shop-gallery-item-3{background-position:left bottom}
.detail-shop .shop-gallery-item-4{background-position:right bottom}
.detail-shop .shop-gallery-item:hover{filter:saturate(1.04) contrast(1.02)}
.detail-shop .hero-copy{position:sticky;top:8.194444vw;min-height:0;padding:1.944444vw 0 0;background:transparent;justify-content:flex-start}
.detail-shop .hero-copy .eyebrow{margin-bottom:1.388889vw;font-size:0.833333vw;letter-spacing:.18em;color:#64738a}
.detail-shop .hero-copy h1{max-width:100%;margin:0 0 1.527778vw;font-size:clamp(2.638889vw,4vw,4.444444vw);line-height:.98;letter-spacing:-.045em}
.detail-shop .hero-copy .summary{max-width:36.111111vw;margin:0 0 2.222222vw;font-size:1.111111vw;line-height:1.85;white-space:pre-line;color:#47566a}
.detail-shop .hero-copy .meta{width:100%;margin:0;padding:1.388889vw 0;border-top:0.069444vw solid rgba(20,42,68,.2);border-bottom:0.069444vw solid rgba(20,42,68,.2)}
.detail-shop .shop-assurance{display:grid;grid-template-columns:repeat(3,1fr);width:100%;padding:1.527778vw 0;gap:0.694444vw;border-bottom:0.069444vw solid rgba(20,42,68,.2)}
.detail-shop .shop-assurance span{text-align:center;font-size:0.694444vw;font-weight:700;letter-spacing:.1em;color:#355370}
.detail-shop .hero-copy .primary{width:100%;margin-top:1.944444vw;padding:1.25vw 1.666667vw;text-align:center;background:#15395f;color:#fff;border:0.069444vw solid #15395f}
.detail-shop .story{width:min(86.111111vw,calc(100% - 3.888889vw));margin:0 auto;padding:9.027778vw 0;background:#fff}
.detail-shop .story:before{content:"";position:absolute;inset:0 50% 0 50%;width:100vw;transform:translateX(-50%);background:#fff;z-index:-1}
.detail-shop .story-heading,.detail-shop .story-text{position:relative;text-align:center;margin-left:auto;margin-right:auto}
.detail-shop .story-heading h2{max-width:56.944444vw;margin-left:auto;margin-right:auto;font-size:clamp(2.222222vw,4vw,3.75vw)}
.detail-shop .story-text{max-width:52.777778vw!important;line-height:1.9;white-space:normal!important}
.detail-shop .feature-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1.25vw;margin-top:5vw}
.detail-shop .feature-grid article{min-height:18.75vw;padding:2.638889vw;background:#edf2f4;border:0}
.detail-shop .feature-grid article:nth-child(2){background:#f2eadb}
.detail-shop .feature-grid article:nth-child(3){background:#e8e7e4}
.detail-shop .ritual{padding:8.888889vw max(6vw,1.944444vw);background:#dce8eb}
.detail-shop .ritual-title,.detail-shop .ritual ol{width:min(81.944444vw,100%);margin-left:auto;margin-right:auto}
.detail-shop .ritual ol{gap:1.111111vw}
.detail-shop .ritual li{background:rgba(255,255,255,.62);border-color:rgba(20,42,68,.16)}
.detail-shop .related{padding:9.027778vw clamp(1.944444vw,6vw,6.944444vw) 10.416667vw;background:#f7f3ea}
.detail-shop .related>header,.detail-shop .related-grid{width:min(91.666667vw,100%);margin-left:auto;margin-right:auto}
.detail-shop .related-grid{gap:1.666667vw}
.detail-shop .related-grid a div{aspect-ratio:1/1.05;background:#e7e1d5}
