/* Visitor journey and store connection; existing Pepin typography and media retained. */
.shop-bridge{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:85px 9vw;background:#efefeb;color:#1b211c}.shop-bridge h2,.visit-heading h2{font-size:clamp(30px,3.5vw,50px);line-height:1.2;margin:25px 0}.shop-bridge-copy{align-self:center}.shop-bridge-copy p{font-size:20px;line-height:1.65;margin-top:0}.shop-bridge-copy small{display:block;font-size:13px;line-height:1.7;max-width:440px;margin-top:22px;color:#555d52}.shop-bridge .text-link{font-size:12px;line-height:1.7}.visitor-journey{padding:85px 9vw 100px;border-top:1px solid #ffffff25;background:#10120f}.visit-heading{max-width:720px;margin-bottom:50px}.visit-heading>p{font-size:18px;color:#c6c7be}.visitor-journey ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;list-style:none;padding:0;margin:0}.visitor-journey li{border-top:1px solid #ffffff40;padding-top:24px;min-width:0}.visitor-journey li>span{font:500 10px Inter,sans-serif}.visitor-journey h3{font-size:26px;line-height:1.3;margin:23px 0 18px}.visitor-journey li p{font-size:17px;line-height:1.65;color:#c6c7be}.visitor-journey .text-link{font-size:10px;line-height:1.8}.demo-boundary{font:400 14px/1.65 'Source Sans Pro',Arial,sans-serif;max-width:590px;margin:20px 0 14px}.seasonal-copy .demo-boundary{font-size:14px;max-width:370px;color:#e8dada}.visit-context{display:inline-block;margin-top:24px;border-bottom:1px solid;font-size:14px}.creator-guidance .creator-possibility{font-size:18px;line-height:1.65;color:#c6c7be}.occasion-notes .proposed-possibility{max-width:780px}.proposed-possibility strong{font-weight:400}.occasion-introduction .text-link{font-size:11px;margin-top:25px}
@media(max-width:800px){.shop-bridge{display:block;padding:60px 24px}.shop-bridge-copy{margin-top:30px}.shop-bridge-copy p{font-size:18px}.visitor-journey{padding:60px 24px 75px}.visitor-journey ol{display:block}.visitor-journey li{margin-top:35px;padding-top:24px}.visit-heading{margin-bottom:35px}.shop-bridge h2,.visit-heading h2{font-size:32px}.visitor-journey li p{font-size:17px}.visitor-journey .text-link{font-size:11px}.creator-guidance .creator-possibility{font-size:17px}.dx-footer>div{flex-wrap:wrap;gap:22px}.demo-boundary{font-size:14px}}

/* Editorial follow-through: feather actual imagery, keep copy opaque, tighten rhythm. */
.occasion-introduction{padding:65px 7vw 55px}.occasion-gallery{padding-top:55px;padding-bottom:65px}.gallery-heading{margin-bottom:35px}.occasion-image-grid{gap:42px 30px}.occasion-image-card figure{aspect-ratio:1/1;background:transparent;overflow:visible}.occasion-image-card img{mask-image:linear-gradient(180deg,transparent 0%,#000 5%,#000 76%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 5%,#000 76%,transparent 100%)}.occasion-image-card figcaption{background:none;padding-bottom:18px}.occasion-image-card>div{padding-top:4px}.occasion-image-card p{margin-bottom:16px}.card-explore{padding:14px 0}.gallery-note{margin-top:30px}.shop-bridge{position:relative;isolation:isolate;background:#10120f;color:#efefeb;padding-top:75px;padding-bottom:75px}.shop-bridge:before{content:'';position:absolute;inset:-55px 0;z-index:-1;background:linear-gradient(90deg,#10120f 10%,#10120fea 43%,#10120f70 80%),linear-gradient(0deg,#10120f,transparent 35%,transparent 65%,#10120f),url('/assets/pepin-woven-light.webp') center 56%/cover no-repeat;pointer-events:none}.shop-bridge-copy small{color:#c6c7be}.visitor-journey{padding-top:65px;padding-bottom:65px;border-top:0}.visit-heading{margin-bottom:35px}.creator-invitation{padding-top:55px;padding-bottom:60px}.occasion-depth{padding-top:70px;padding-bottom:75px}.depth-heading{margin-bottom:40px}.occasion-notes{padding-top:60px;padding-bottom:65px}.journey-plan{padding-top:70px;padding-bottom:75px}.dx-footer{padding-top:65px}.shop-bridge-copy .text-link:hover,.visitor-journey .text-link:hover{border-color:currentColor}.occasion-image-card img{transition:transform .65s ease,filter .65s ease}.occasion-image-card:hover img{filter:brightness(1.06)}
@media(max-width:800px){.immersive-home{min-height:840px}.occasion-introduction{padding:50px 24px 40px}.occasion-gallery{padding:40px 24px 50px}.occasion-image-grid{gap:30px 18px}.occasion-image-card figure{aspect-ratio:4/5}.shop-bridge{padding:50px 24px 55px}.shop-bridge:before{inset:-35px 0;background:linear-gradient(90deg,#10120fe8,#10120fb8),linear-gradient(0deg,#10120f,transparent 40%,transparent 60%,#10120f),url('/assets/pepin-woven-light.webp') center/cover no-repeat}.visitor-journey{padding:50px 24px 55px}.creator-invitation{padding:45px 24px 55px}.occasion-depth,.occasion-notes{padding:50px 24px}.journey-plan{padding:50px 24px 65px}.dx-footer{padding-top:55px}}
@media(prefers-reduced-motion:reduce){.occasion-image-card img{transition:none}.occasion-image-card:hover img{transform:none;filter:none}}
/* V24: retain established homepage scale; large photographic pauses belong in detail journeys. */
.detail-photo-scene{position:relative;margin:0;width:100%;overflow:hidden;background:var(--journey-bg,#10120f)}.detail-photo-scene img{display:block;width:100%;height:clamp(440px,62vw,740px);object-fit:cover;object-position:center;mask-image:linear-gradient(180deg,transparent,#000 8%,#000 88%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 8%,#000 88%,transparent)}.detail-photo-scene figcaption{position:absolute;left:6vw;bottom:22px;font:400 11px/1.6 Inter,sans-serif;color:#e8e8df;text-shadow:0 1px 6px #000}.detail-photo-scene.portrait-scene{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:5vw;padding:25px 6vw}.detail-photo-scene.portrait-scene img{height:600px;object-position:center}.detail-photo-scene.portrait-scene figcaption{position:static;color:inherit;font:400 22px/1.5 'Source Sans Pro',Arial,sans-serif;text-shadow:none;max-width:400px}.detail-photo-scene.portrait-scene figcaption small{display:block;font:400 11px/1.7 Inter,sans-serif;margin-top:18px;opacity:.7}.email-demo button{width:auto!important;padding:0 16px;font-size:11px}
@media(max-width:800px){.detail-photo-scene img{height:auto;min-height:0;max-height:none;object-fit:cover}.detail-photo-scene figcaption{left:24px;bottom:18px;font-size:10px}.detail-photo-scene.portrait-scene{display:block;max-width:none;padding:0}.detail-photo-scene.portrait-scene img{width:100%;height:auto;max-height:none}.detail-photo-scene.portrait-scene figcaption{padding:22px 24px 35px;font-size:20px}.detail-photo-scene.portrait-scene figcaption small{margin-top:10px}.occasion-image-card figure{aspect-ratio:4/5}.occasion-image-card img{object-fit:cover}.journey-plan{padding-top:45px;padding-bottom:55px}}
/* V25: respect the owner's actual iPhone screenshots, not merely overflow tests. */
.flow-reservation{position:relative;inset:auto;transform:none;z-index:auto;width:auto;max-width:440px;margin:0 auto;padding:28px 24px 45px;opacity:1!important;visibility:visible!important;pointer-events:auto!important}.flow-reservation>span{white-space:normal;text-shadow:none}.flow-reservation>a{min-width:0;width:100%}
.film-play-fallback{position:absolute;z-index:8;left:7vw;bottom:32px;border:1px solid #ffffff88;color:white;background:#10120fb8;padding:14px 20px;font:500 13px Inter,sans-serif}.film-play-fallback[hidden]{display:none}
.occasion-image-card figure{overflow:hidden}.occasion-image-card img{mask-image:linear-gradient(180deg,transparent,#000 15%,#000 68%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 15%,#000 68%,transparent)}
.detail-photo-scene,.detail-photo-scene.portrait-scene{max-width:none;margin:0;display:block;padding:0;position:relative;isolation:isolate;min-height:660px;background:var(--journey-bg,#10120f)}
.detail-photo-scene img,.detail-photo-scene.portrait-scene img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;mask-image:linear-gradient(180deg,transparent,#000 14%,#000 70%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 14%,#000 70%,transparent);z-index:-2}
.detail-photo-scene:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 15%,var(--journey-bg,#10120f) 95%)}
.detail-photo-scene figcaption,.detail-photo-scene.portrait-scene figcaption{position:relative;left:auto;bottom:auto;margin-left:55%;padding:210px 7vw 100px 0;max-width:650px;color:#efeee8;font:400 30px/1.35 var(--body,Arial,sans-serif);text-shadow:none}.detail-photo-scene figcaption small{display:block;margin-top:20px;font:400 14px/1.65 Inter,sans-serif;color:#d4d1ca}
@media(max-width:800px){
 .site-header.dx-header{inset:0 0 auto!important;box-sizing:border-box;width:100%;max-width:100%;height:76px;padding:0 20px!important;gap:12px;background:linear-gradient(#10120fe8,#10120f33)!important;border:0;display:flex;align-items:center}
 .site-header.dx-header .brand-mark{width:94px;flex:0 0 94px;margin:0}.site-header.dx-header .brand-mark img{width:94px;height:auto;max-width:100%}.site-header.dx-header .mobile-plan{margin-left:auto;padding:14px 0;min-width:0;font-size:10px;white-space:nowrap}.site-header.dx-header .menu-toggle{margin:0;padding:12px 0 12px 6px;flex:0 0 auto;min-width:64px;font-size:11px;gap:8px}.site-header.dx-header .menu-toggle span{width:22px;flex:0 0 22px}.mobile-menu{inset:76px 0 0!important;width:100%;padding:35px 24px;box-sizing:border-box;max-height:calc(100dvh - 76px)}
 .immersive-home{padding-top:110px}.film-play-fallback{left:24px;bottom:20px}.flow-reservation{width:auto;bottom:auto;margin:0 auto;padding:24px 24px 40px}
 .occasion-gallery{padding-left:0;padding-right:0}.gallery-heading,.gallery-note,.occasion-image-card>div{padding-left:24px;padding-right:24px}.occasion-image-grid{gap:45px}.occasion-image-card figure{aspect-ratio:4/5;margin:0;width:100%}.occasion-image-card figcaption{left:24px;bottom:35px}.occasion-image-card img{object-fit:cover;mask-image:linear-gradient(180deg,transparent,#000 18%,#000 65%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 18%,#000 65%,transparent)}
 .detail-photo-scene,.detail-photo-scene.portrait-scene{min-height:760px}.detail-photo-scene img,.detail-photo-scene.portrait-scene img{height:100%;width:100%;max-height:none;object-fit:cover;mask-image:linear-gradient(180deg,transparent,#000 12%,#000 42%,transparent 84%);-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 42%,transparent 84%)}.detail-photo-scene:after{background:linear-gradient(180deg,transparent 35%,var(--journey-bg,#10120f) 85%)}.detail-photo-scene figcaption,.detail-photo-scene.portrait-scene figcaption{margin:0;padding:490px 24px 45px;max-width:none;font-size:27px;line-height:1.3}.detail-photo-scene figcaption small{font-size:13px;line-height:1.65;max-width:34em}
}
@media(max-width:374px){.site-header.dx-header{padding:0 14px!important;gap:9px}.site-header.dx-header .brand-mark,.site-header.dx-header .brand-mark img{width:80px;flex-basis:80px}.site-header.dx-header .mobile-plan{font-size:9px}}
.detail-photo-scene figcaption p{font:400 17px/1.65 Inter,sans-serif;margin:20px 0;color:#e1ded7}.detail-photo-scene figcaption small{opacity:.82}
@media(max-width:800px){.detail-photo-scene figcaption p{font-size:15px;line-height:1.7;max-width:34em}.detail-photo-scene,.detail-photo-scene.portrait-scene{min-height:850px}.detail-photo-scene figcaption,.detail-photo-scene.portrait-scene figcaption{padding-top:490px}}
/* V25 local QA correction: blocked/paused playback uses the same control row. */
.hero-film-controls .film-play-fallback{position:static;inset:auto;z-index:auto;margin:0;max-width:100%;padding:10px 14px;font-size:11px;line-height:1.4}
.hero-film-controls{flex-wrap:wrap;row-gap:10px}
.film-needs-play .hero-film-controls .motion-toggle{display:none}
@media(max-width:800px){.hero-film-controls .film-play-fallback{position:static;inset:auto;padding:10px 12px;font-size:10px}.hero-film-controls{max-width:calc(100% - 48px);column-gap:16px}}
/* V26: one coherent menu surface and explicit close state. */
.site-header.dx-header.menu-open,.edited-experience .site-header.dx-header.menu-open{background:#101010!important;backdrop-filter:none!important;border:0!important;box-shadow:none!important}
.mobile-menu{background:#101010!important}
.site-header.dx-header .menu-toggle .menu-label{width:auto;height:auto;border:0;flex:none;font:inherit}
.site-header.dx-header .menu-toggle .menu-icon{position:relative;width:22px;height:8px;border:0;flex:0 0 22px}
.menu-icon:before,.menu-icon:after{content:'';position:absolute;left:0;width:22px;height:1px;background:currentColor;transition:transform .2s}
.menu-icon:before{top:0}.menu-icon:after{bottom:0}
.menu-open .menu-icon:before{top:4px;transform:rotate(45deg)}.menu-open .menu-icon:after{bottom:3px;transform:rotate(-45deg)}
.hero-film-controls,.film-play-fallback{display:none!important}
/* V26 local visual correction: retain the real car and arch, not just the sign. */
.journey-creators .scene-media video,.journey-creators .scene-media>img{object-position:center bottom;filter:saturate(.95) brightness(1)}
.journey-creators .journey-wash{background:linear-gradient(90deg,#171b18 15%,#171b18a6 42%,transparent 73%),linear-gradient(0deg,#171b18 0%,transparent 20%)}
@media(max-width:800px){
 .journey-creators .scene-media{mask-image:linear-gradient(180deg,#000 0%,#000 88%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 88%,transparent 100%)}
 .journey-creators .journey-wash{background:linear-gradient(180deg,#171b18cc 0%,#171b18b3 38%,#171b1833 57%,transparent 74%,#171b18 100%)}
 .journey-creators .journey-heading{top:17%}.journey-creators .journey-heading h1{margin-top:22px;margin-bottom:20px}.journey-creators .journey-heading>p{margin-top:18px;margin-bottom:20px}
}
/* Two explicitly illustrative lower chapters. Whole source composition, never cropped. */
.concept-chapter{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:center;max-width:1560px;margin:0 auto;padding:35px 0 65px;background:var(--journey-bg,#10120f)}
.concept-chapter>img{display:block;position:relative;width:100%;height:auto;max-width:100%;object-fit:contain;mask-image:linear-gradient(180deg,transparent 0%,#000 5%,#000 94%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 5%,#000 94%,transparent 100%)}
.concept-chapter>figcaption{padding:40px 7vw 40px 4vw;color:#eeeae2}.concept-chapter h2{font-size:clamp(32px,3.5vw,54px);line-height:1.15;margin:24px 0}.concept-chapter p{font-size:18px;line-height:1.75;color:#ded9d0}.concept-chapter small{display:block;margin-top:26px;font:400 12px/1.7 Inter,sans-serif;color:#bcb8b0;max-width:38em}
@media(max-width:800px){.concept-chapter{display:block;padding:18px 0 45px}.concept-chapter>img{width:100%;height:auto;object-fit:contain}.concept-chapter>figcaption{padding:12px 24px 30px}.concept-chapter h2{font-size:34px;margin:20px 0}.concept-chapter p{font-size:17px;line-height:1.75}.concept-chapter small{font-size:11px;line-height:1.75;margin-top:22px}}
.concept-chapter>img{mask-image:linear-gradient(180deg,transparent,#000 5%,#000 94%,transparent),linear-gradient(90deg,transparent,#000 4%,#000 91%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(180deg,transparent,#000 5%,#000 94%,transparent),linear-gradient(90deg,transparent,#000 4%,#000 91%,transparent);-webkit-mask-composite:source-in}
/* Preserve the real-reference landscape geometry without cropping it into a portrait. */
.concept-chapter.concept-landscape{display:block;max-width:1560px}.concept-landscape>img{width:100%;height:auto}.concept-landscape>figcaption{max-width:920px;margin:0 auto;padding:15px 7vw 55px}.concept-landscape h2 br{display:none}
@media(max-width:800px){.concept-landscape>figcaption{padding:18px 24px 30px}.concept-landscape h2{font-size:32px}}
