/* Pilar Online | Vitrine pública de cupons | /_css/cupons.css */
.po-cp{--cp-red:#C1272D;--cp-orange:#F47016;--cp-ink:#242934;--cp-muted:#6f7784;--cp-line:#e9e9ed;--cp-bg:#f5f6f8;font-family:Poppins,Arial,sans-serif;color:var(--cp-ink);background:var(--cp-bg);padding:22px 0 65px;min-height:58vh}
.po-cp *{box-sizing:border-box}
.po-cp-container{max-width:1380px;margin:0 auto;padding:0 20px}
.po-cp a{text-decoration:none}
.po-cp button,.po-cp select,.po-cp input{font:inherit}
.po-cp button:focus-visible,.po-cp a:focus-visible,.po-cp select:focus-visible,.po-cp input:focus-visible,.po-cp summary:focus-visible{outline:3px solid #fa9238;outline-offset:3px}
.po-cp-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.po-cp [hidden]{display:none!important}

/* Hero */
.po-cp-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:center;min-height:310px;overflow:hidden;border-radius:17px;background:linear-gradient(115deg,#ad222a 0%,#d6382f 50%,#f47016 100%);color:#fff;padding:40px clamp(24px,5vw,72px);box-shadow:0 10px 30px rgba(160,48,30,.12)}
.po-cp-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 90% 10%,rgba(255,255,255,.19),transparent 43%),repeating-linear-gradient(125deg,transparent 0 50px,rgba(255,255,255,.035) 51px 52px)}
.po-cp-hero-content{position:relative;z-index:2;max-width:590px}
.po-cp-hero-kicker{display:inline-flex;align-items:center;gap:9px;font-size:11px;line-height:1.2;font-weight:700;letter-spacing:.14em;color:#fff5e8}
.po-cp-kicker-dot{display:block;width:7px;height:7px;background:#ffe39d;border-radius:50%;box-shadow:0 0 0 5px rgba(255,227,157,.16)}
.po-cp-hero h1{font-size:clamp(29px,3.4vw,48px);font-weight:700;line-height:1.16;letter-spacing:-1.3px;margin:17px 0 12px}
.po-cp-hero h1 span{color:#ffe5b7}
.po-cp-hero p{font-size:14px;line-height:1.75;color:#fff3ef;max-width:495px;margin:0}
.po-cp-hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:20px;margin-top:23px;background:#fff;color:#bd2b2f;border-radius:8px;padding:13px 19px;font-size:13px;font-weight:700;transition:transform .18s,box-shadow .18s}
.po-cp-hero-cta:hover{transform:translateY(-2px);box-shadow:0 5px 18px rgba(71,17,12,.15)}
.po-cp-hero-cta span{font-size:20px;line-height:12px}
.po-cp-hero-art{position:relative;min-height:220px;height:100%;pointer-events:none}
.po-cp-hero-glow{position:absolute;inset:7% 0 0 12%;border-radius:50%;background:radial-gradient(circle,rgba(255,213,160,.32),transparent 67%);filter:blur(9px)}
.po-cp-art-ticket{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:2px dashed rgba(255,255,255,.76);border-radius:16px;color:#fff;text-align:center}
.po-cp-art-ticket-back{width:242px;height:148px;top:8%;left:12%;transform:rotate(-15deg);background:#f68b4e;box-shadow:0 14px 24px rgba(96,23,12,.12);opacity:.85}
.po-cp-art-ticket-back span{font-size:12px;font-weight:700;letter-spacing:.14em}.po-cp-art-ticket-back strong{font-size:27px}
.po-cp-art-ticket-front{width:280px;height:180px;right:13%;top:13%;transform:rotate(10deg);background:linear-gradient(125deg,#fffefb,#fff0d8);border:2px dashed #df715b;box-shadow:0 22px 32px rgba(84,22,13,.19);color:#c32e31}
.po-cp-art-ticket-front small{font-size:12px;font-weight:700;letter-spacing:.07em}.po-cp-art-ticket-front strong{font-size:78px;line-height:1;font-weight:700}.po-cp-art-ticket-front span{font-size:11px;font-weight:700;letter-spacing:.08em}
.po-cp-art-spark{position:absolute;color:#ffe8a4;font-size:32px}.po-cp-art-spark-one{left:9%;bottom:10%}.po-cp-art-spark-two{right:8%;top:2%}

/* Quick statistics */
.po-cp-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 26px}
.po-cp-highlight{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--cp-line);border-radius:11px;padding:15px 19px}
.po-cp-highlight-icon{display:grid;place-items:center;flex:0 0 43px;height:43px;border-radius:10px;background:#fff2e9;color:var(--cp-orange);font-size:24px;font-weight:700}
.po-cp-highlight>div{display:flex;flex-direction:column;gap:1px;min-width:0}.po-cp-highlight strong{font-size:17px;line-height:1.35;font-weight:700}.po-cp-highlight div span{font-size:11px;color:var(--cp-muted)}

/* Common section titles */
.po-cp-feature-section{margin:0 0 29px}.po-cp-heading{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:0 0 16px}
.po-cp-section-kicker{display:block;color:var(--cp-orange);font-size:10px;letter-spacing:.13em;font-weight:700;margin-bottom:5px}
.po-cp-heading h2,.po-cp-howto h2{margin:0;font-size:23px;line-height:1.3;font-weight:700;letter-spacing:-.35px}
.po-cp-heading-hint{font-size:11px;color:var(--cp-muted);font-weight:500}.po-cp-count{font-size:12px;color:var(--cp-muted)}
.po-cp-feature-grid{display:grid;grid-template-columns:minmax(0,1fr)}

/* Coupon cards */
.po-cp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;align-items:stretch}
.po-cp-card{position:relative;display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e4e5e8;border-radius:12px;box-shadow:0 2px 9px rgba(28,33,43,.035);overflow:hidden;transition:box-shadow .2s,transform .2s}
.po-cp-card:hover{transform:translateY(-2px);box-shadow:0 12px 29px rgba(28,33,43,.09)}
.po-cp-card-top{display:flex;align-items:center;gap:11px;padding:20px 20px 11px}
.po-cp-store-mark{width:44px;height:44px;flex:0 0 44px;border-radius:12px;display:grid;place-items:center;overflow:hidden;border:1px solid #ffe5d9;background:#fff2ec;color:#d84633;font-size:19px;font-weight:700}
.po-cp-store-mark img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}.po-cp-store-text{display:flex;flex-direction:column;gap:4px;min-width:0}
.po-cp-store-text strong{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:12px;font-weight:600}
.po-cp-eyebrow{color:#8a919b;font-size:9px;letter-spacing:.075em;font-weight:600}
.po-cp-card-main{flex:1;padding:6px 20px 16px}
.po-cp-value{color:var(--cp-red);font-weight:700;font-size:clamp(24px,2.05vw,30px);line-height:1.17;letter-spacing:-.7px;margin:8px 0 9px}
.po-cp-card-main h3{margin:0;font-size:14px;line-height:1.45;font-weight:600;max-width:95%}
.po-cp-desc{color:var(--cp-muted);line-height:1.6;font-size:11.5px;margin:6px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.po-cp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px}
.po-cp-chips span{padding:5px 8px;background:#f7f7f9;border:1px solid #eeeef0;border-radius:5px;font-size:10px;color:#626975;font-weight:500}
.po-cp-ticket-edge{height:1px;flex:0 0 1px;position:relative;margin:0 12px;background:repeating-linear-gradient(90deg,#e6e7ea 0 7px,transparent 7px 14px)}
.po-cp-ticket-edge:before,.po-cp-ticket-edge:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:var(--cp-bg);border:1px solid var(--cp-line);top:-9px}
.po-cp-ticket-edge:before{left:-22px}.po-cp-ticket-edge:after{right:-22px}
.po-cp-card-bottom{padding:15px 20px 17px}.po-cp-validity{display:flex;gap:6px;align-items:center;color:#727a86;font-size:11px;line-height:1.45;margin:0 0 11px}
.po-cp-validity svg{width:15px;height:15px;flex:0 0 15px}
.po-cp-code-row{display:flex;gap:7px;align-items:stretch;min-width:0}
.po-cp-code{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px dashed #f2a18c;background:#fff7f3;color:#a83429;border-radius:7px;font-size:12px;font-weight:700;letter-spacing:.06em;padding:9px}
.po-cp-copy{flex:0 0 auto;border:0;background:var(--cp-red);color:#fff;padding:0 13px;border-radius:7px;cursor:pointer;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px;min-height:39px;transition:background .2s}
.po-cp-copy:hover{background:#9f1e26}.po-cp-copy svg{width:15px;height:15px}
.po-cp-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;min-height:26px;flex-wrap:wrap}
.po-cp-conditions{position:relative;min-width:0}.po-cp-conditions summary{display:inline-flex;align-items:center;gap:5px;color:#606c78;font-size:11px;font-weight:600;cursor:pointer;list-style:none}
.po-cp-conditions summary::-webkit-details-marker{display:none}.po-cp-conditions summary svg{width:13px;height:13px;transition:transform .2s}.po-cp-conditions[open] summary svg{transform:rotate(180deg)}
.po-cp-conditions[open]{flex:0 0 100%;order:3}.po-cp-condition-content{position:static;width:100%;margin-top:9px;padding:12px 13px;background:#fffaf7;border:1px solid #f5e1da;border-radius:8px}
.po-cp-condition-content p{margin:0 0 7px;color:#4f5966;font-size:11px;line-height:1.55}.po-cp-condition-content p:last-child{margin-bottom:0}
.po-cp-visit{color:var(--cp-red);font-size:11px;font-weight:700;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.po-cp-visit:hover{text-decoration:underline}
.po-cp-card--featured{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-rows:auto 1fr;box-shadow:0 5px 22px rgba(30,36,42,.055);min-height:240px}
.po-cp-card--featured .po-cp-card-top{grid-column:1;grid-row:1;padding:25px 30px 0}
.po-cp-card--featured .po-cp-card-main{grid-column:1;grid-row:2;padding:9px 30px 26px}
.po-cp-card--featured .po-cp-card-bottom{grid-column:2;grid-row:1 / span 2;display:flex;flex-direction:column;justify-content:center;padding:32px 34px;background:linear-gradient(120deg,#fff7f0,#fffaf6)}
.po-cp-card--featured .po-cp-ticket-edge{grid-column:2;grid-row:1 / span 2;width:1px;height:auto;align-self:stretch;justify-self:start;margin:15px 0;background:repeating-linear-gradient(180deg,#f4c2b6 0 7px,transparent 7px 14px);z-index:1}
.po-cp-card--featured .po-cp-ticket-edge:before,.po-cp-card--featured .po-cp-ticket-edge:after{top:auto;left:-9px;right:auto;border-color:#f4d5cc}.po-cp-card--featured .po-cp-ticket-edge:before{top:-25px}.po-cp-card--featured .po-cp-ticket-edge:after{bottom:-25px}
.po-cp-card--featured .po-cp-value{font-size:39px;margin:11px 0 11px}.po-cp-card--featured .po-cp-card-main h3{font-size:17px}.po-cp-card--featured .po-cp-desc{font-size:12px}
.po-cp-card--featured .po-cp-store-mark{width:50px;height:50px;flex-basis:50px}
.po-cp-feature-badge{margin-left:auto;align-self:flex-start;padding:6px 10px;border-radius:20px;background:#fff1e9;color:#c65a22;font-size:10px;font-weight:700}
.po-cp-card--featured .po-cp-copy{background:var(--cp-orange)}.po-cp-card--featured .po-cp-copy:hover{background:#de5c0a}
.po-cp-card--featured .po-cp-code{background:#fff;border-color:#f0b6a0}.po-cp-card--featured .po-cp-card-actions{margin-top:18px}

/* Filters */
.po-cp-list-section{scroll-margin-top:20px}
.po-cp-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px;background:#fff;border:1px solid var(--cp-line);border-radius:11px;margin-bottom:19px}
.po-cp-search{position:relative;display:flex;align-items:center;flex:1 1 250px;min-width:180px}.po-cp-search svg{width:19px;height:19px;position:absolute;left:13px;color:#8b929d}
.po-cp-search input,.po-cp-select-wrap select{width:100%;height:43px;background:#fafafa;border:1px solid #e5e7ea;border-radius:7px;font-size:12px;color:#39404b;outline:0}
.po-cp-search input{padding:0 12px 0 40px}.po-cp-search input::placeholder{color:#959da6}
.po-cp-select-wrap{flex:0 1 205px;min-width:150px}.po-cp-select-wrap select{padding:0 9px;cursor:pointer}
.po-cp-search input:focus,.po-cp-select-wrap select:focus{border-color:var(--cp-orange);background:#fff}
.po-cp-reset{border:0;cursor:pointer;background:#fff1eb;color:#bd4531;font-size:11px;font-weight:700;border-radius:7px;height:43px;padding:0 13px}
.po-cp-no-match{text-align:center;padding:40px 15px;background:#fff;border:1px dashed #d9dce0;border-radius:10px;margin-top:15px;display:flex;flex-direction:column;gap:6px}.po-cp-no-match strong{font-size:14px}.po-cp-no-match span{font-size:12px;color:var(--cp-muted)}

/* How-to / empty states */
.po-cp-howto{margin-top:30px;background:#fff;border:1px solid var(--cp-line);border-radius:12px;padding:27px 29px}
.po-cp-howto-intro{margin-bottom:20px}.po-cp-howto-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.po-cp-howto-steps>div{display:grid;grid-template-columns:37px 1fr;gap:3px 9px;align-content:start}.po-cp-howto-steps>div>span{grid-row:span 2;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff2eb;color:var(--cp-orange);font-size:11px;font-weight:700}
.po-cp-howto-steps strong{font-size:12px;font-weight:700;margin-top:1px}.po-cp-howto-steps p{font-size:11px;line-height:1.6;color:var(--cp-muted);margin:0}
.po-cp-message{display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;margin-top:18px;padding:65px 20px;background:#fff;border:1px solid var(--cp-line);border-radius:12px}
.po-cp-message-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:16px;background:#fff2ec;color:var(--cp-red);font-size:32px;font-weight:700}
.po-cp-message h2{margin:7px 0 0;font-size:22px}.po-cp-message p{max-width:510px;font-size:13px;line-height:1.7;color:var(--cp-muted);margin:0}.po-cp-message a{font-size:12px;font-weight:700;color:#fff;background:var(--cp-red);padding:12px 18px;border-radius:7px;margin-top:12px}
.po-cp-toast{position:fixed;z-index:11000;left:50%;bottom:28px;transform:translateX(-50%);padding:12px 19px;border-radius:9px;box-shadow:0 9px 32px rgba(0,0,0,.2);background:#24362a;color:#fff;text-align:center;font-size:12px;font-weight:600;max-width:calc(100vw - 28px)}

@media(max-width:1100px){.po-cp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.po-cp-art-ticket-front{right:0}.po-cp-art-ticket-back{left:4%}}
@media(max-width:800px){.po-cp-hero{grid-template-columns:1fr;min-height:265px}.po-cp-hero-content{max-width:630px}.po-cp-hero-art{display:none}.po-cp-highlights{gap:8px}.po-cp-highlight{padding:13px}.po-cp-highlight-note{display:none}.po-cp-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.po-cp-card--featured{grid-template-columns:1fr}.po-cp-card--featured .po-cp-card-top,.po-cp-card--featured .po-cp-card-main,.po-cp-card--featured .po-cp-card-bottom{grid-column:1;grid-row:auto}.po-cp-card--featured .po-cp-card-top{padding:21px 23px 0}.po-cp-card--featured .po-cp-card-main{padding:8px 23px 22px}.po-cp-card--featured .po-cp-card-bottom{padding:20px 23px}.po-cp-card--featured .po-cp-ticket-edge{grid-column:1;grid-row:auto;width:auto;height:1px;justify-self:stretch;margin:0 11px;background:repeating-linear-gradient(90deg,#f4c2b6 0 7px,transparent 7px 14px)}.po-cp-card--featured .po-cp-ticket-edge:before,.po-cp-card--featured .po-cp-ticket-edge:after{top:-9px;left:auto;bottom:auto}.po-cp-card--featured .po-cp-ticket-edge:before{left:-20px}.po-cp-card--featured .po-cp-ticket-edge:after{right:-20px}.po-cp-howto-steps{gap:10px}}
@media(max-width:600px){.po-cp{padding:10px 0 38px}.po-cp-container{padding:0 10px}.po-cp-hero{padding:31px 24px;min-height:246px;border-radius:11px}.po-cp-hero h1{font-size:30px;letter-spacing:-.6px}.po-cp-hero p{font-size:12px;line-height:1.7}.po-cp-hero-kicker{font-size:9px}.po-cp-hero-cta{margin-top:17px;padding:12px 15px;font-size:12px}.po-cp-highlights{margin:10px 0 24px}.po-cp-highlight{gap:8px;padding:10px 11px}.po-cp-highlight-icon{width:36px;height:36px;flex-basis:36px;font-size:21px}.po-cp-highlight strong{font-size:15px}.po-cp-highlight div span{font-size:10px}.po-cp-heading h2,.po-cp-howto h2{font-size:18px}.po-cp-heading{margin-bottom:12px}.po-cp-heading-hint{display:none}.po-cp-section-kicker{font-size:9px}.po-cp-feature-section{margin-bottom:22px}.po-cp-grid{grid-template-columns:1fr;gap:11px}.po-cp-card-top{padding:17px 17px 9px}.po-cp-card-main{padding:5px 17px 15px}.po-cp-card-bottom{padding:14px 17px 16px}.po-cp-card--featured .po-cp-value{font-size:32px}.po-cp-value{font-size:28px}.po-cp-filters{gap:8px;padding:10px}.po-cp-search{flex-basis:100%}.po-cp-select-wrap{flex:1 1 calc(50% - 4px);min-width:125px}.po-cp-search input,.po-cp-select-wrap select{height:41px;font-size:11px}.po-cp-howto{margin-top:22px;padding:21px 17px}.po-cp-howto-steps{grid-template-columns:1fr;gap:16px}.po-cp-howto-steps>div{grid-template-columns:34px 1fr}.po-cp-howto-steps>div>span{width:32px;height:32px}.po-cp-message{padding:44px 15px}.po-cp-message h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){.po-cp *{scroll-behavior:auto!important;transition:none!important}}
