:root{--display:"Bricolage Grotesque",Figtree,system-ui,sans-serif;--body:Figtree,system-ui,sans-serif}
/* ===== offers: iOS-style curved cards ===== */
.offers-sec{padding:clamp(56px,7vw,90px) 0 10px;overflow:hidden}
.offers-sec .sec-head{margin-bottom:18px}
.ocards{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:18px 22px 30px;perspective:1200px}
.ocards::-webkit-scrollbar{display:none}
.ocards.inline{padding-left:max(clamp(18px,4vw,40px),calc((100vw - var(--wrap))/2 + clamp(18px,4vw,40px)));padding-right:40px}
.ocard{--a:#17636D;--b:#0B2C33;--fg:#fff;--sub:rgba(255,255,255,.78);--chip:rgba(255,255,255,.18);
  position:relative;flex:0 0 min(300px,78vw);scroll-snap-align:center;border-radius:32px;padding:22px 22px 20px;color:var(--fg);min-height:330px;display:flex;flex-direction:column;
  background:radial-gradient(140% 90% at 0% 0%,var(--a) 0%,var(--b) 75%);box-shadow:0 22px 50px -18px rgba(11,44,51,.55),inset 0 1px 0 rgba(255,255,255,.35),inset 0 -1px 0 rgba(0,0,0,.12);
  transform-style:preserve-3d;transition:transform .25s cubic-bezier(.2,.8,.2,1);overflow:hidden;isolation:isolate}
.ocard::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.28) 50%,transparent 65%);transform:translateX(var(--sh,-80%));transition:transform .5s;z-index:-1}
.ocard::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-110px;background:rgba(255,255,255,.12);z-index:-1}
.ocard.teal{--a:#1d7480;--b:#0B2C33}
.ocard.ink{--a:#2a4f57;--b:#081d22}
.ocard.treat{--a:#FFE7A3;--b:#F5A93A;--fg:#0B2C33;--sub:rgba(11,44,51,.75);--chip:rgba(11,44,51,.12)}
.ocard.blush{--a:#FFC7BA;--b:#FF6F61;--fg:#2b0d08;--sub:rgba(43,13,8,.75);--chip:rgba(43,13,8,.12)}
.ocard.lilac{--a:#EEE8FF;--b:#9E87FF;--fg:#1d1145;--sub:rgba(29,17,69,.75);--chip:rgba(29,17,69,.12)}
.ocard.mint{--a:#E4FAF4;--b:#6FCDC4;--fg:#0B2C33;--sub:rgba(11,44,51,.75);--chip:rgba(11,44,51,.12)}
.oc-art{height:118px;display:flex;align-items:center;justify-content:space-between;transform:translateZ(40px)}
.oc-emoji{font-size:4.6rem;line-height:1;filter:drop-shadow(0 14px 14px rgba(0,0,0,.28));animation:ocFloat 3.4s ease-in-out infinite;display:inline-block}
.ocard:nth-child(2n) .oc-emoji{animation-delay:-1.2s}.ocard:nth-child(3n) .oc-emoji{animation-delay:-2.1s}
@keyframes ocFloat{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-12px) rotate(6deg)}}
.oc-badge{align-self:flex-start;font:800 1.05rem/1 var(--display);letter-spacing:.02em;padding:10px 14px;border-radius:16px;background:var(--fg);color:var(--b);transform:translateZ(30px) rotate(4deg);box-shadow:0 8px 18px rgba(0,0,0,.18)}
.ocard h4{font:800 1.55rem/1.08 var(--display);margin:10px 0 6px;transform:translateZ(24px)}
.ocard p{margin:0;color:var(--sub);font-size:.96rem;line-height:1.45;flex:1}
.oc-meta{display:flex;align-items:center;gap:8px;margin:14px 0 12px;min-height:28px}
.oc-timer{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.85rem;padding:6px 11px;border-radius:999px;background:var(--chip);font-variant-numeric:tabular-nums}
.oc-timer.hot{background:#fff;color:#C2361F;animation:pulse 1.4s infinite}
@keyframes pulse{50%{transform:scale(1.05)}}
.oc-cta{border:0;border-radius:18px;padding:14px 18px;font:700 1rem var(--body);background:var(--fg);color:var(--b);display:flex;justify-content:space-between;align-items:center;transform:translateZ(20px);transition:transform .15s}
.oc-cta::after{content:"";width:9px;height:9px;border-top:2.5px solid currentColor;border-right:2.5px solid currentColor;transform:rotate(45deg)}
.oc-cta:active{transform:translateZ(20px) scale(.97)}
.ocard.tilt{transition:none}


.offer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.offer-item{display:grid;gap:10px}
.offer-item .ocard{flex:none;min-height:300px}
.offer-info{background:#fff;border:1px solid #D6E6E4;border-radius:16px;padding:12px;display:grid;gap:6px}
.offer-live #ofPrev{display:flex;justify-content:center;padding:14px;background:#EAF4F3;border-radius:18px;margin-top:6px}
.offer-live .ocard{flex:0 0 300px}
.bulk{display:flex;flex-wrap:wrap;gap:6px;align-items:center;background:#0B2C33;color:#fff;border-radius:14px;padding:10px 12px;margin-bottom:12px;position:sticky;top:76px;z-index:4}
.bulk .btn-line{background:#fff;color:#0B2C33}
