:root {--green:#35b934; --ink:#111; --muted:#65706b; --line:#d9dddb; --page:#f0f1f1; --black:#050505}
* {box-sizing:border-box}
body.public-store {display:flex; flex-direction:column; min-height:100vh; margin:0; background:var(--page); color:var(--ink); font:14px Arial,Helvetica,sans-serif}
body.public-store a {color:inherit}
main {flex:0 0 auto; background:transparent}
.public-header {background:var(--black)}
.public-header-inner {display:grid; grid-template-columns:220px minmax(360px,1fr) 230px; grid-template-rows:49px 55px; gap:0 20px; align-items:center; max-width:1180px; min-height:104px; margin:auto; padding:0}
.public-utility-primary {grid-column:2; grid-row:1; display:grid; grid-template-columns:repeat(3,1fr); color:#fff}
.public-utility-primary>span {display:grid; align-content:center; gap:2px; min-height:34px; padding:0 18px; border-right:1px solid #777; font-size:11px}
.public-utility-primary>span:last-child {border-right:0}
.public-utility-primary b {font-size:12px; text-transform:uppercase}
.public-utility-primary small {font-size:10px}
.public-brand {grid-row:1 / 3; color:#66cf59; text-decoration:none; font-size:20px; font-weight:900}
.public-brand img {display:block; max-width:190px; max-height:54px}
.public-search {grid-column:2; grid-row:2; display:flex; height:45px; overflow:hidden; border:1px solid #d4d4d4; border-radius:4px; background:#fff}
.public-search input {flex:1; min-width:0; border:0; padding:0 16px; outline:0; font:italic 13px Arial}
.public-search button {width:54px; border:0; background:#fff; color:#17232d; font-size:27px; cursor:pointer}
.public-cart {display:grid; grid-template-columns:38px 1fr 24px; grid-template-rows:1fr 1fr; align-items:center; padding:7px 9px; background:var(--green); color:#fff; font-weight:800; text-decoration:none}
.public-cart span {display:none}.public-cart b {grid-column:2; font-size:12px; text-transform:uppercase}.public-cart small {grid-column:2; font-size:11px}.public-cart i {grid-column:3; grid-row:1 / 3; display:grid; place-items:center; width:24px; height:24px; border:2px solid #fff; border-radius:50%; font-style:normal}.public-account {grid-column:3; grid-row:1 / 3; display:grid; grid-template-rows:49px 55px; color:#fff; font-size:12px}.public-account>span {display:grid; align-content:center; justify-items:center; gap:2px}.public-account>span small {font-size:11px}.public-account>span a {color:#62d95b; text-decoration:none}
.public-main-banner {position:relative; width:min(2438px,100%); height:410px; margin:0 auto; overflow:hidden; background:#e8ece9}
.public-main-banner-slide {display:block; width:100%; height:100%}
.public-main-banner-slide[hidden] {display:none}
.public-main-banner img {display:block; width:100%; height:100%; object-fit:cover}
.public-carousel-prev,.public-carousel-next {position:absolute; z-index:2; top:50%; width:42px; height:62px; transform:translateY(-50%); border:0; background:#0006; color:#fff; font-size:39px; cursor:pointer}
.public-carousel-prev {left:0}
.public-carousel-next {right:0}
.public-carousel-dots {position:absolute; z-index:2; bottom:12px; left:50%; display:flex; gap:7px; transform:translateX(-50%)}
.public-carousel-dots button {width:10px; height:10px; padding:0; border:1px solid #fff; border-radius:50%; background:#ffffff80}
.public-carousel-dots button[aria-pressed=true] {background:#fff}
.public-store-shell {display:grid; grid-template-columns:265px minmax(0,1fr); gap:36px; max-width:1180px; margin:26px auto 0}
.public-side {align-self:start; background:#fff}
.public-side h2 {margin:0; padding:14px; background:#69c75e; color:#fff; font-size:13px; text-align:center; text-transform:uppercase}
.public-side nav {display:grid}
.public-side nav a {padding:10px 13px; border-bottom:1px solid var(--line); font-size:13px; text-decoration:none}
.public-side nav a:hover {background:#f5faf4; color:#269a2a}
.public-side>p {padding:0 13px; color:var(--muted)}
.public-side-promo {display:grid; gap:12px; min-height:185px; margin-top:15px; padding:23px 17px; background:#090a09; color:#fff; text-align:center}
.public-side-promo strong {font-size:22px; line-height:1.05; text-transform:uppercase}
.public-side-promo em,.public-services em,.public-news em,.public-flow em,.public-testimonials em {color:var(--green); font-style:normal}
.public-side-promo span {color:#d3dbd5; font-size:12px; line-height:1.4}
.public-main-column {min-width:0}
.public-services {text-align:center}
.public-services>h2,.public-news>h2 {margin:0; font-size:25px; text-transform:uppercase}
.public-services>p {margin:2px 0 16px; font-size:12px}
.public-services>div {display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px}
.public-services article {position:relative; min-height:294px; padding:0 15px 15px; border-radius:8px; background:#fff; box-shadow:0 2px 5px #0002; text-align:left}
.public-services article figure {display:grid; place-items:center; height:145px; margin:0 -15px 14px; border-radius:8px 8px 0 0; background:linear-gradient(145deg,#cbd0d0,#f2f3f3); color:#77817d; font-size:10px}
.public-services article>span {position:relative; display:grid; place-items:center; width:42px; height:42px; margin:-35px 0 14px; border-radius:50%; background:#62c94d; color:#fff; font-size:21px}
.public-services h3 {margin:0 0 10px; font-size:12px; text-transform:uppercase}
.public-services article p {font-size:11px; line-height:1.35}
.public-services article a {color:#46aa42; font-size:11px; font-weight:800; text-decoration:none}
.public-news {margin:25px 0; text-align:center}
.public-news-grid {display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:14px}
.public-news-grid a {display:grid; align-content:end; min-height:210px; padding:25px; border-radius:5px; background:linear-gradient(120deg,#101210,#2a2e2b); color:#fff; text-align:left; text-decoration:none}
.public-news-grid a:nth-child(2) {background:linear-gradient(120deg,#151817,#343936)}
.public-news-grid a.has-image {padding:0; background:#151715}
.public-news-grid img {width:100%; height:100%; object-fit:cover}
.public-news-grid strong {font-size:25px; text-transform:uppercase}
.public-news-grid span {margin-top:7px; color:#aeb9b2; font-size:12px}
.public-news-grid a:not(.has-image):after {content:'Banner promocional'; margin-top:10px; color:#61c94e; font-size:11px; font-weight:800}
.public-content,.public-best-sellers,.public-launches {width:100%; padding:0 0 35px}
.public-main-column .public-section-head {margin-top:25px}
.public-section-head {display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:20px; padding-bottom:8px; border-bottom:2px solid #cfd3d1}
.public-section-head span {font-size:20px; font-weight:800}
.public-section-head h1 {display:none}
.public-section-head>a {color:#2d9f33; font-size:12px; font-weight:800; text-decoration:none}
.public-grid {display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px}
.public-card {overflow:hidden; border:1px solid #d8dcda; border-top:3px solid #3baee8; border-radius:2px; background:#fff}
.public-image {display:grid; place-items:center; height:160px; margin:8px 8px 0; background:#f5f6f5; color:#a8b0ab; font-size:28px; font-weight:900; text-decoration:none}
.public-image img {width:100%; height:100%; object-fit:contain}
.public-card>div {display:flex; flex-direction:column; min-height:226px; padding:11px}
.public-card small {color:#252a27; font-size:11px}
.public-card h2 {margin:8px 0; font-size:13px; line-height:1.3}
.public-card h2 a {color:#2bad34; text-decoration:none}
.public-card p {margin:0; color:#444; font-size:11px; line-height:1.5}
.public-card strong {margin-top:auto; padding-top:14px; color:#39b83e; font-size:19px}
.public-buy {display:none}
.public-filters {display:flex; gap:10px; margin-bottom:15px}
.public-filters input,.public-filters select {min-height:42px; border:1px solid var(--line); border-radius:4px; padding:0 12px; font:inherit}
.public-filters input {flex:1}
.public-filters button {padding:0 18px; border:0; border-radius:4px; background:var(--green); color:#fff; font-weight:800}
.public-count {color:var(--muted)}
.public-empty {display:grid; grid-template-columns:220px 260px; gap:48px; align-items:start; padding:45px 0}
.public-empty>div h2 {font-size:14px; text-transform:uppercase}
.public-skeleton-card {text-align:center}
.public-skeleton-art {display:grid; place-items:center; width:180px; height:130px; margin:auto; background:#f2f3f2; color:#d4d8d7; font-size:32px; font-weight:900}
.public-skeleton-card h3 {color:var(--green); font-size:14px; text-transform:uppercase}
.public-skeleton-card p {max-width:230px; margin:24px auto 12px; line-height:1.45}
.public-skeleton-card small {display:block; font-style:italic}
.public-skeleton-card strong {display:block; margin:18px 0; color:var(--green); font-size:23px}
.public-skeleton-card a {display:block; padding:10px; border:1px solid var(--green); border-radius:4px; color:var(--green); font-weight:800; text-decoration:none; text-transform:uppercase}
.public-flow {padding:40px 20px 32px; background:#ededed; text-align:center}
.public-flow h2 {margin:0 0 24px; font-size:20px; text-transform:uppercase}
.public-flow>div {display:grid; grid-template-columns:1fr 34px 1fr 34px 1fr 34px 1fr; align-items:center; max-width:1100px; margin:auto}
.public-flow article {display:grid; justify-items:center; gap:8px}
.public-flow article span {font-size:31px; line-height:1}
.public-flow article span b {display:inline-grid; place-items:center; width:26px; height:26px; margin-right:8px; border-radius:50%; background:#42ad35; color:#fff; font-size:14px; vertical-align:7px}
.public-flow article strong {color:#42ad35; font-size:12px; text-transform:uppercase}
.public-flow article p {max-width:180px; margin:0; font-size:11px; font-weight:700; line-height:1.35}
.public-flow>div>i {color:#8d9591; font-size:30px; font-style:normal}
.public-testimonials {padding:38px max(20px,calc((100vw - 1180px)/2)); background:#ededed}
.public-testimonials h2 {margin:0 0 18px; text-align:center; font-size:20px; text-transform:uppercase}
.public-testimonials>div {display:grid; grid-template-columns:repeat(3,1fr); gap:25px}
.public-testimonials article {min-height:130px; padding:15px; border-radius:9px; background:#fff}
.public-testimonials article>strong {color:#52bc42; letter-spacing:2px}
.public-testimonials article>p {min-height:42px; font-size:11px; font-weight:700; line-height:1.35}
.public-testimonials article footer {display:grid!important; visibility:visible!important; opacity:1!important; gap:1px; padding-left:38px; background:linear-gradient(90deg,#70c75c 0 28px,transparent 28px); font-size:11px}
.public-testimonials article footer small {color:#5b6660}
.public-footer {display:grid!important; visibility:visible!important; opacity:1!important; grid-template-columns:1.15fr 1.1fr 1fr 1.35fr; gap:34px; clear:both; min-height:360px; margin-top:auto; padding:72px max(20px,calc((100vw - 1180px)/2)) 35px; border-top:4px solid var(--green); background:#050505; color:#fff}
.public-footer section {display:grid; align-content:start; gap:8px}
.public-footer h2 {margin:0 0 12px; font-size:14px; text-transform:uppercase}
.public-footer h2:not(:first-child) {margin-top:22px}
.public-footer p,.public-footer a {margin:0; color:#d0d5d2; font-size:12px; line-height:1.55; text-decoration:none}
.public-footer-contact p {padding-left:20px}
.public-footer-contact p:before {content:'○'; margin-left:-20px; margin-right:8px; color:var(--green)}
.public-social-empty,.public-logo-slots {display:flex; flex-wrap:wrap; gap:8px}
.public-social-empty span {display:grid; place-items:center; width:58px; height:32px; border:1px dashed #68726c; color:#b8c0c3; font-size:9px; text-transform:uppercase}
.public-logo-slots i {display:block; width:56px; height:29px; border:1px dashed #68726c; border-radius:3px}
.public-copyright {grid-column:1/-1; margin-top:25px; color:#b8c0c3; text-align:center}
@media(max-width:900px) {.public-store-shell {grid-template-columns:1fr; margin:18px 14px}
.public-side {display:none}
.public-services>div {grid-template-columns:repeat(3,1fr)}
.public-grid {grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px) {.public-header-inner {grid-template-columns:1fr auto; grid-template-rows:auto auto auto; padding:10px 14px}
.public-brand {grid-row:1}
.public-utility-primary {display:none}
.public-account {grid-column:2; grid-row:1; display:block}
.public-account>span {display:none}
.public-account .public-cart {display:grid}
.public-search {grid-column:1 / -1; grid-row:2}
.public-main-banner {height:210px}
.public-footer {grid-template-columns:1fr 1fr}
.public-flow>div {grid-template-columns:1fr 30px 1fr; gap:22px 0}
.public-flow>div>i:nth-of-type(2) {display:none}
.public-flow article p {font-size:10px}
.public-testimonials>div {grid-template-columns:1fr}
}
@media(max-width:640px) {.public-services>div {grid-template-columns:repeat(2,1fr)}
.public-services article {min-height:250px}
.public-news-grid {grid-template-columns:1fr}
.public-news-grid a {min-height:170px}
.public-grid {grid-template-columns:repeat(2,1fr)}
.public-empty {grid-template-columns:1fr; gap:25px}
}
@media(max-width:480px) {.public-grid,.public-footer {grid-template-columns:1fr}
.public-cart {font-size:0}
.public-cart span {margin:0}
}
