/* ==========================================================================
   Coupons Grid — [custom_coupons]
   ========================================================================== */

.cc-savvo{
    --o:#FE803C;
    --o-dark:#e56d29;
    --p:#FF114F;
    --k:#000;
    --bg:#fff7f2;
    --ink:#1a1111;
    --mut:#6b5b5b;
    --card:#fff;
    --line:#f1ddd2;
    --g:linear-gradient(120deg,#FE803C,#FF3830 45%,#FF114F);
    background:var(--bg); color:var(--ink);
    font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
    font-size:16px; line-height:1.55; padding:72px 0; box-sizing:border-box;
}
@media (prefers-color-scheme: dark){
    .cc-savvo:not([data-theme="light"]){
        --bg:#0d0707; --ink:#fff3ee; --mut:#b9a59e; --card:#1a0f0f; --line:#3a2321;
    }
}
.cc-savvo[data-theme="dark"]{ --bg:#0d0707; --ink:#fff3ee; --mut:#b9a59e; --card:#1a0f0f; --line:#3a2321; }

.cc-savvo *,.cc-savvo *::before,.cc-savvo *::after{box-sizing:border-box}
.cc-savvo h1,.cc-savvo h2,.cc-savvo h3,.cc-savvo h4,.cc-savvo p,.cc-savvo ul,.cc-savvo li,.cc-savvo figure,.cc-savvo article{margin:0;padding:0}
.cc-savvo ul{list-style:none}
.cc-savvo h1,.cc-savvo h2,.cc-savvo h3{font-family:'Bricolage Grotesque',Georgia,'Times New Roman',serif;line-height:1.05;font-weight:800;color:var(--ink)}
.cc-savvo a{color:inherit;text-decoration:none;transition:color .2s ease}
.cc-savvo :focus-visible{outline:3px solid var(--o);outline-offset:2px;border-radius:4px}

.cc-savvo .w{max-width:1240px;margin:0 auto;padding:0 24px;width:100%}
.cc-savvo .hd{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:32px;flex-wrap:wrap}
.cc-savvo .hd h2{font-size:clamp(30px,4vw,44px);font-weight:800;letter-spacing:-1px;color:var(--ink)}
.cc-savvo .hd a{font-weight:700;color:var(--o);font-size:15px}
.cc-savvo .hd a:hover{color:var(--o-dark)}

.cc-savvo .deals{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:22px}

.cc-savvo .deal{position:relative;display:flex;background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;min-width:0}
.cc-savvo .deal:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(254,128,60,.18);border-color:var(--o)}
.cc-savvo .deal::before,.cc-savvo .deal::after{content:"";position:absolute;right:170px;width:22px;height:22px;border-radius:50%;background:var(--bg);border:1px solid var(--line);z-index:2}
.cc-savvo .deal::before{top:-12px}
.cc-savvo .deal::after{bottom:-12px}

.cc-savvo .deal .m{flex:1;min-width:0;padding:22px 22px 20px 24px;display:flex;flex-direction:column}
.cc-savvo .deal .s{display:flex;align-items:center;gap:10px;font-weight:700;font-size:14px;color:var(--mut);line-height:1}
.cc-savvo .deal .s a{color:var(--mut)}
.cc-savvo .deal .s a:hover{color:var(--o)}
.cc-savvo .deal .s i{width:32px;height:32px;border-radius:10px;background:#000;color:#fff;display:grid;place-items:center;font-family:'Bricolage Grotesque',Georgia,serif;font-size:14px;font-weight:800;font-style:normal;flex-shrink:0;line-height:1}

.cc-savvo .deal h3{font-size:21px;font-weight:700;color:var(--ink);margin:12px 0 8px;line-height:1.3;letter-spacing:-.3px}
.cc-savvo .deal h3 a{color:inherit}
.cc-savvo .deal h3 a:hover{color:var(--o)}
.cc-savvo .deal p{font-size:14.5px;color:var(--mut);line-height:1.5;margin:0 0 16px}
.cc-savvo .deal p .more{color:var(--o);font-weight:700;white-space:nowrap;margin-left:2px}
.cc-savvo .deal p .more:hover{color:var(--o-dark)}

.cc-savvo .deal .meta{display:flex;flex-wrap:wrap;gap:6px 22px;padding-top:14px;border-top:1px dashed var(--line);font-size:13.5px;line-height:1.5;color:var(--mut);margin-top:auto}
.cc-savvo .deal .meta li{display:inline-flex;align-items:center;gap:6px}
.cc-savvo .deal .meta .lbl{font-weight:800;color:#000;flex-shrink:0;font-size:13.5px}
@media (prefers-color-scheme: dark){
    .cc-savvo:not([data-theme="light"]) .deal .meta .lbl{color:#fff}
}
.cc-savvo[data-theme="dark"] .deal .meta .lbl{color:#fff}

.cc-savvo .grad-text,.cc-savvo .deal .meta a,.cc-savvo .deal .meta .date{font-weight:700;background:var(--g);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;transition:opacity .2s ease;display:inline-block}
.cc-savvo .grad-text:hover,.cc-savvo .deal .meta a:hover{opacity:.75}

.cc-savvo .deal .x{width:190px;flex-shrink:0;border-left:2px dashed var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px 14px}
.cc-savvo .deal .x b{font-family:'Bricolage Grotesque',Georgia,serif;font-size:30px;font-weight:800;line-height:1;letter-spacing:-1px;background:var(--g);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}

.cc-savvo .badge-success{display:inline-flex;flex-direction:column;align-items:center;gap:1px;background:linear-gradient(180deg,#1e9e57,#157a42);color:#fff;border-radius:8px;padding:5px 11px;line-height:1;box-shadow:0 4px 10px rgba(30,158,87,.25)}
.cc-savvo .badge-success .bs-label{font-size:9.5px;font-weight:700;letter-spacing:.6px;opacity:.9}
.cc-savvo .badge-success .bs-pct{font-family:'Bricolage Grotesque',Georgia,serif;font-size:15px;font-weight:800;letter-spacing:-.3px}

.cc-savvo .rv{display:inline-block;width:100%;border:0;cursor:pointer;background:#000;color:#fff;font-family:'DM Sans',system-ui,sans-serif;font-size:13.5px;font-weight:700;padding:11px 14px;border-radius:11px;text-align:center;text-decoration:none;line-height:1.2;white-space:nowrap;transition:background .2s ease,color .2s ease,outline-color .2s ease;-webkit-appearance:none;appearance:none}
.cc-savvo .rv:hover{background:var(--o);color:#fff}
.cc-savvo .rv:active{transform:translateY(1px)}
.cc-savvo .rv.on{background:#fff;color:#000;outline:2px dashed var(--o);outline-offset:0;letter-spacing:1px;cursor:text;font-family:'DM Sans',ui-monospace,SFMono-Regular,Menlo,monospace}
.cc-savvo .rv.on:hover{background:#fff;color:#000}

.cc-savvo .hot{position:absolute;top:12px;right:200px;font-size:11px;font-weight:700;background:var(--p);color:#fff;border-radius:999px;padding:2px 10px;z-index:3;letter-spacing:.2px;line-height:1.6}

@media (max-width:1024px){
    .cc-savvo .deals{gap:18px}
    .cc-savvo .deal .x{width:170px;padding:18px 12px}
    .cc-savvo .deal::before,.cc-savvo .deal::after{right:150px}
    .cc-savvo .hot{right:180px}
}
@media (max-width:860px){
    .cc-savvo .deals{grid-template-columns:1fr}
    .cc-savvo .deal::before,.cc-savvo .deal::after{right:170px}
    .cc-savvo .hot{right:200px}
}
@media (max-width:760px){
    .cc-savvo{padding:56px 0}
    .cc-savvo .hd{margin-bottom:22px}
    .cc-savvo .hd h2{font-size:28px;letter-spacing:-.5px}
    .cc-savvo .deals{gap:16px}
}
@media (max-width:560px){
    .cc-savvo{padding:44px 0}
    .cc-savvo .w{padding:0 16px}
    .cc-savvo .deal::before,.cc-savvo .deal::after{right:148px}
    .cc-savvo .deal .x{width:166px;padding:16px 12px}
    .cc-savvo .deal .x b{font-size:26px}
    .cc-savvo .deal .rv{font-size:12.5px;padding:9px 12px}
    .cc-savvo .hot{right:180px;font-size:10px;padding:2px 8px}
    .cc-savvo .deal h3{font-size:18px}
    .cc-savvo .deal .m{padding:18px}
    .cc-savvo .deal .meta{font-size:12.5px;gap:4px 16px}
}
@media (max-width:420px){
    .cc-savvo .deal{flex-direction:column}
    .cc-savvo .deal::before,.cc-savvo .deal::after{display:none}
    .cc-savvo .deal .x{width:100%;border-left:0;border-top:2px dashed var(--line);flex-direction:row;justify-content:space-between;padding:14px 18px;gap:10px}
    .cc-savvo .deal .x b{font-size:24px}
    .cc-savvo .deal .x .rv{width:auto;min-width:130px;flex-shrink:0}
    .cc-savvo .hot{right:14px;top:14px}
}
@media (prefers-reduced-motion: reduce){
    .cc-savvo *{transition:none !important;animation:none !important}
    .cc-savvo .deal:hover{transform:none}
}