/* ข้อความบนภาพ (สไลด์ปก + แบนเนอร์) — ใช้ทั้งหน้าร้านและตัวอย่างในหลังร้าน */
.ov-host{container-type:inline-size}
.ov-bg{position:absolute;inset:0;overflow:hidden}
.ov-bg::before,.ov-bg::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.12)}
.ov-bg::before{width:55cqw;height:55cqw;right:-12cqw;top:-28cqw}
.ov-bg::after{width:30cqw;height:30cqw;right:16cqw;bottom:-20cqw;background:rgba(255,255,255,.08)}
.ov-bg-cream::before,.ov-bg-mint::before{background:rgba(255,255,255,.55)}
.ov-bg-cream::after,.ov-bg-mint::after{background:rgba(255,255,255,.4)}
.ov{position:absolute;inset:0;z-index:2;display:flex;align-items:center;padding:0 6cqw;pointer-events:none;--c:0,0,0;--a:0}
.ov-center{justify-content:center;text-align:center}
.ov-right{justify-content:flex-end;text-align:right}
.ov-in{max-width:62%;display:flex;flex-direction:column;align-items:flex-start;gap:1.1cqw}
.ov-center .ov-in{max-width:84%;align-items:center}
.ov-right .ov-in{align-items:flex-end}
.ov-title{font-size:clamp(17px,5cqw,60px);font-weight:800;line-height:1.15;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ov-text{font-size:clamp(11px,2cqw,23px);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ov-btn{display:inline-block;margin-top:.5cqw;padding:clamp(4px,.9cqw,12px) clamp(11px,2.3cqw,28px);border-radius:99px;font-weight:700;font-size:clamp(11px,1.6cqw,19px);white-space:nowrap}
.ov-light{color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.4)}
.ov-light .ov-btn{background:#fff;color:#111827;text-shadow:none;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.ov-dark{color:#111827;text-shadow:0 1px 10px rgba(255,255,255,.6);--c:255,255,255}
.ov-dark .ov-btn{background:#111827;color:#fff;text-shadow:none}
.ov-shade1{--a:.55}.ov-shade2{--a:.8}
.ov-left:not(.ov-shade0){background:linear-gradient(90deg,rgba(var(--c),var(--a)),rgba(var(--c),calc(var(--a)*.4)) 50%,transparent 80%)}
.ov-right:not(.ov-shade0){background:linear-gradient(270deg,rgba(var(--c),var(--a)),rgba(var(--c),calc(var(--a)*.4)) 50%,transparent 80%)}
.ov-center:not(.ov-shade0){background:rgba(var(--c),calc(var(--a)*.6))}
@container (max-width:520px){.ov-in{max-width:78%}.ov-text{-webkit-line-clamp:1}}
