
:root{ --g:#5F9EA0; --bg:#f7f8fa; --text:#222; --muted:#6b7280; --hero-h:420px; }
*{box-sizing:border-box}
.container.full{max-width:1200px;margin:0 auto;padding:24px 20px}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.1rem;border-radius:999px;border:1px solid #e5e7eb;background:#fff;color:#111;text-decoration:none;font-weight:600;transition:.2s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.08)}
.btn.solid{background:var(--g);border-color:var(--g);color:#fff}
.cg-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #eef2f6;z-index:50}
.cg-header-inner{max-width:1200px;margin:0 auto;padding:10px 20px;display:flex;gap:16px;align-items:center;justify-content:space-between}
.cg-logo{font-weight:800;color:#111;text-decoration:none;font-size:1.1rem}
.cg-nav .cg-menu{list-style:none;display:flex;gap:16px;margin:0;padding:0}
.cg-nav .cg-menu a{color:#111;text-decoration:none;font-weight:600}
.cg-actions{display:flex;align-items:center;gap:10px}
.cg-icon{position:relative;display:inline-grid;place-items:center;width:40px;height:40px;border-radius:999px;background:#f5f7fa;border:1px solid #e9edf2}
.cg-icon svg{width:20px;height:20px;fill:#111}
.cg-cart-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:999px;background:#ef4444;color:#fff;font-size:12px;display:inline-grid;place-items:center;padding:0 4px}
.cg-mini-cart{position:fixed;top:0;right:-380px;width:340px;max-width:90vw;height:100vh;background:#fff;border-left:1px solid #e5e7eb;box-shadow:-10px 0 30px rgba(0,0,0,.06);z-index:60;display:flex;flex-direction:column;transition:right .25s ease}
.cg-mini-cart.open{right:0}
.cg-mini-cart__head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid #eef2f6}
.cg-mini-cart__content{padding:12px;overflow:auto;flex:1}
.cg-mini-cart__foot{padding:12px;border-top:1px solid #eef2f6;display:flex;gap:8px}
.cg-mini-cart-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);opacity:0;pointer-events:none;z-index:55;transition:opacity .25s ease}
.cg-mini-cart-backdrop.show{opacity:1;pointer-events:auto}
.cg-footer{background:#0f172a;color:#e5e7eb;margin-top:40px}
.cg-footer-inner{max-width:1200px;margin:0 auto;padding:24px 20px;display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:20px}
.cg-footer h4,.cg-footer h5{margin:.2rem 0 .6rem}
.cg-list{list-style:none;margin:0;padding:0}
.cg-list a{color:#e5e7eb;text-decoration:none}
.cg-pay{display:flex;gap:8px;align-items:center}
.pay{width:44px;height:28px;border-radius:6px;background:#fff;display:inline-block;position:relative}
.pay.visa::after{content:'V';position:absolute;inset:0;display:grid;place-items:center;color:#1a73e8;font-weight:800}
.pay.mc::after{content:'MC';position:absolute;inset:0;display:grid;place-items:center;color:#ef4444;font-weight:800}
.pay.pix::after{content:'PIX';position:absolute;inset:0;display:grid;place-items:center;color:#059669;font-weight:800}
.pay.boleto::after{content:'BLT';position:absolute;inset:0;display:grid;place-items:center;color:#111;font-weight:800}
.cg-copy{border-top:1px solid #1f2937;padding:12px 20px;text-align:center}
.section-title{position:relative;display:flex;align-items:center;justify-content:center;margin:14px 0 8px}
.section-title h2{margin:0;font-size:26px;line-height:1.2;font-weight:600;font-family:Georgia,'Times New Roman',serif;letter-spacing:.2px;text-align:center}
.section-title .see-all{position:absolute;right:0}
@media (max-width:700px){.section-title{flex-direction:column;gap:8px}.section-title .see-all{position:static}}
.hr-sub{height:3px;background:linear-gradient(90deg,var(--g),#cfe6e7);border:0;border-radius:999px;margin:8px 0 18px}
.hero{position:relative;margin-bottom:10px}
.hero-bg{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);height:var(--hero-h);background:no-repeat center/cover}
.hero-bg{background-image:var(--bg)}
.hero-grid{margin-top:-70px}
.hero-copy{padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.06);max-width:680px}
.hero-copy h1{margin:6px 0 6px;font-size:clamp(1.6rem,3vw,2.2rem)}
.hero-copy p{margin:0;color:var(--muted)}
.hero-copy .cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.hl{background:#fff}
.hl .wrap{max-width:1200px;margin:0 auto;padding:12px 20px}
.hl .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;align-items:center;justify-items:center}
.hl .item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:linear-gradient(180deg,#ffffff,#f6fbfc);border:1px solid #e8f0f1}
.hl .icon{width:22px;height:22px;display:inline-grid;place-items:center;color:#5F9EA0}
.hl b{color:#0b3c3e;white-space:nowrap}
.hl span{color:#3e4c4d;font-size:13px}
@media (max-width:900px){ .hl .grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:560px){ .hl .grid{grid-template-columns:1fr} .hl .item{justify-content:center} }
.promo-fw{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);position:relative;overflow:hidden;margin-top:20px;margin-bottom:20px}
.promo-fw .box{height:240px;display:grid;place-items:center;border-top:1px dashed #b9d5d7;border-bottom:1px dashed #b9d5d7;background:#f2f6f7}
.promo-fw img{width:100%;height:100%;object-fit:cover;display:block}
.carousel{position:relative;overflow:hidden}
.carousel .viewport{overflow:hidden;width:100%}
.carousel .track{display:flex;gap:16px;transition:transform .45s cubic-bezier(.22,.61,.36,1);will-change:transform}
.carousel .prev,.carousel .next{position:absolute;top:40%;z-index:2}
.carousel .prev{left:-10px}.carousel .next{right:-10px}
@media (max-width:700px){.carousel .viewport{overflow-x:auto;scroll-snap-type:x mandatory}.carousel .track{gap:12px}.carousel .track>*{scroll-snap-align:start}.carousel .prev,.carousel .next{display:none}}
.card{min-width:25%;border:1px solid #ececec;border-radius:16px;overflow:hidden;background:#fff;position:relative;transition:transform .25s ease, box-shadow .25s ease}
.card:hover{box-shadow:0 20px 40px rgba(0,0,0,.08);transform:translateY(-2px)}
.card .imgwrap{position:relative;overflow:hidden}
.card img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .5s}
.card:hover img{transform:scale(1.06)}
.badge-ribbon{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;background:#f59e0b;color:#fff;font-size:12px;padding:6px 10px;border-radius:999px;box-shadow:0 6px 16px rgba(0,0,0,.12);z-index:2}
.badge-ribbon.promo{background:#e11d48}
.badge-ribbon.star{background:#f59e0b}
.pname{font-weight:700;min-height:44px}
.price{margin:8px 0;color:#111;font-size:18px;font-weight:800;display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.price .old{color:#9ca3af;font-weight:500;text-decoration:line-through;margin-left:6px}
.pix-pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;padding:2px 8px;border-radius:999px}
.pix-icon{width:12px;height:12px;display:inline-block;border:2px solid currentColor;border-radius:3px;transform:rotate(45deg)}
.card .fin{color:var(--muted);font-size:13px;margin-top:2px}
.brand-card{min-width:16%;height:90px;border:1px solid #ececec;border-radius:14px;background:#fff;display:grid;place-items:center;flex:0 0 16%}
.brand-card img,.brand-card span{max-width:80%;max-height:70%;object-fit:contain;filter:grayscale(.2);transition:filter .3s, transform .3s}
.brand-card:hover img,.brand-card:hover span{filter:none;transform:scale(1.05)}
@media (max-width:1024px){.card{min-width:33.33%}.brand-card{min-width:25%;flex:0 0 25%}}
@media (max-width:640px){.card{min-width:80%}.brand-card{min-width:45%;flex:0 0 45%}}
