
:root{--ink:#0b1828;--green:#087a50;--green2:#0b9161;--yellow:#f7be22;--paper:#f4f6f5;--muted:#637080;--line:#dfe5e2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,a,select,input{font:inherit}.topbar{background:var(--ink);color:#dce6e2;text-align:center;padding:9px 20px;font-size:12px;letter-spacing:.02em}.header{height:78px;padding:0 max(4vw,24px);display:flex;align-items:center;gap:40px;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #eef1ef}.brand{font-size:24px;font-weight:900;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.brand b{color:var(--green)}.nav{display:flex;gap:30px;align-items:center;margin:auto}.nav a{text-decoration:none;color:#283442;font-weight:700;font-size:15px}.nav a:hover{color:var(--green)}.nav-dropdown{position:relative}.nav-trigger{border:0;background:transparent;color:#283442;font-weight:700;font-size:15px;display:flex;align-items:center;gap:5px;padding:18px 0;cursor:pointer}.nav-trigger:hover,.nav-trigger[aria-expanded="true"]{color:var(--green)}.submenu{display:none;position:absolute;top:49px;left:-20px;width:270px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px;box-shadow:0 18px 45px #172a2030}.submenu.show,.nav-dropdown:hover .submenu,.nav-dropdown:focus-within .submenu{display:grid}.submenu button{border:0;background:transparent;text-align:left;padding:12px;border-radius:8px;color:#283442;font-weight:700;font-size:14px;display:flex;align-items:center;gap:9px;cursor:pointer}.submenu button:hover{background:#f1f6f3;color:var(--green)}.submenu .view-all{border-top:1px solid var(--line);border-radius:0;margin-top:6px;padding-top:15px;color:var(--green);justify-content:space-between}.category-dot{width:10px;height:10px;border-radius:50%;background:#f2b91f}.dot-uso-obligatorio{background:#176aa6}.dot-prohibición,.dot-incendio{background:#c92e2e}.dot-emergencia{background:#087a50}.cart{border:0;background:var(--ink);color:#fff;border-radius:9px;padding:11px 16px;display:flex;gap:8px;align-items:center;font-weight:700}.menu-button{display:none;border:0;background:none}.hero{min-height:570px;background:linear-gradient(100deg,#eef3ef 0%,#f8faf9 60%);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:58px max(7vw,30px);overflow:hidden}.hero-copy{max-width:680px}.eyebrow,.kicker{font-size:12px;font-weight:900;letter-spacing:.14em;color:var(--green);display:flex;align-items:center;gap:7px}.hero h1{font-size:clamp(48px,5.7vw,78px);line-height:.96;letter-spacing:-.055em;margin:22px 0}.hero h1 em{font-style:normal;color:var(--green)}.hero-copy>p{font-size:18px;line-height:1.65;color:#536170;max-width:610px}.hero-actions{display:flex;gap:12px;margin:32px 0 20px}.button{border:0;border-radius:9px;padding:15px 21px;text-decoration:none;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer}.primary{background:var(--green);color:#fff;box-shadow:0 8px 20px #087a5033}.primary:hover{background:var(--green2)}.secondary{background:#fff;color:var(--ink);border:1px solid #cdd6d1}.hero-notes{display:flex;gap:24px;color:#455263;font-size:14px;font-weight:700}.hero-notes span{display:flex;align-items:center;gap:5px}.hero-notes svg{width:16px;color:var(--green)}.hero-art{height:410px;position:relative;display:grid;place-items:center}.wall{width:83%;height:90%;background:linear-gradient(140deg,#f5f5f1,#cfd6d2);border-radius:2px;display:grid;place-items:center;position:relative;box-shadow:inset -35px -25px 70px #66746c29,15px 18px 40px #26372f22}.wall-shadow{position:absolute;width:58%;height:20px;bottom:22%;background:#13281c32;filter:blur(15px)}.seal{position:absolute;bottom:-8px;left:0;background:var(--yellow);width:142px;height:142px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(-7deg);border:5px solid #fff;box-shadow:0 10px 30px #18241d33}.seal svg{width:24px}.seal strong{font-size:22px}.seal span{font-size:10px;width:88px;font-weight:800}.sign{width:72%;aspect-ratio:1.55;background:#fff;border-radius:3px;box-shadow:0 10px 22px #1b2b2233;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;border:9px solid currentColor;color:var(--green);position:relative;z-index:2}.sign strong{font-size:clamp(16px,2vw,28px);text-transform:uppercase;line-height:1.05}.sign small{font-size:8px;letter-spacing:.11em;margin-top:8px}.sign-icon{font-size:46px;line-height:1;margin-bottom:6px}.sign-large{width:63%}.sign-blue{color:#176aa6}.sign-yellow{color:#151515;background:#ffd12b}.sign-red{color:#c92e2e}.trust{display:grid;grid-template-columns:repeat(4,1fr);padding:27px max(6vw,30px);border-bottom:1px solid var(--line);gap:20px}.trust>div{display:flex;align-items:center;justify-content:center;gap:12px}.trust svg{color:var(--green)}.trust span{display:flex;flex-direction:column;font-size:12px;color:var(--muted)}.trust b{color:var(--ink);font-size:14px;margin-bottom:3px}.section{padding:82px max(7vw,30px)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section h2,.config-wrap h2,.pack h2,.contact h2{font-size:clamp(32px,4vw,52px);letter-spacing:-.04em;line-height:1.05;margin:12px 0}.section-head p,.config-intro>p{color:var(--muted);margin:0;font-size:16px}.section-head a{color:var(--green);font-weight:800;text-decoration:none;display:flex;gap:7px}.catalog-search{height:58px;max-width:760px;border:1px solid #cfd8d3;border-radius:11px;display:flex;align-items:center;gap:12px;padding:0 17px;background:#fff;box-shadow:0 7px 22px #1c33271a;margin-bottom:16px}.catalog-search svg{color:var(--green);flex:none}.catalog-search input{border:0;outline:0;width:100%;font-size:16px;color:var(--ink)}.catalog-search input::placeholder{color:#8a9690}.catalog-search button{border:0;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer}.category-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 24px;scrollbar-width:thin}.category-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 15px;white-space:nowrap;color:#536170;font-weight:800;font-size:14px;cursor:pointer}.category-tabs button:hover,.category-tabs button.active{border-color:var(--green);background:var(--green);color:#fff}.no-results{border:1px dashed #b8c8bf;border-radius:14px;background:#f7faf8;padding:50px 25px;text-align:center;color:var(--muted)}.no-results svg{color:var(--green)}.no-results h3{color:var(--ink);font-size:22px;margin:12px 0 7px}.no-results p{margin:0 0 17px}.no-results a{color:var(--green);font-weight:800}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;transition:.2s}.product:hover{transform:translateY(-4px);box-shadow:0 14px 36px #192e2420}.product-image{height:230px;background:#eff2f0;display:grid;place-items:center;position:relative}.product-image .sign{width:62%;max-height:155px}.tag{position:absolute;left:14px;top:14px;padding:6px 9px;border-radius:20px;background:#fff;font-size:12px;font-weight:800;z-index:3}.product-info{padding:19px}.product-info h3{margin:0 0 13px;font-size:18px}.product-info p{color:var(--muted);margin:0}.product-info p b{font-size:20px;color:var(--ink)}.product-info button{float:right;margin-top:-30px;border:0;background:none;color:var(--green);font-weight:800;display:flex;gap:5px}.config-wrap{background:var(--ink);color:#fff;padding:82px max(8vw,30px);display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center}.light{color:#68d8aa}.config-intro>p{color:#b8c3ce;line-height:1.6}.config-intro>.sign{width:62%;margin:36px 0 28px}.quality-badge{display:flex;gap:12px;align-items:center;color:#cad4dd}.quality-badge svg{color:var(--yellow)}.quality-badge span{display:flex;flex-direction:column;font-size:12px}.quality-badge b{color:#fff;margin-bottom:4px}.config-card{background:#fff;color:var(--ink);padding:30px;border-radius:16px;box-shadow:0 25px 60px #0005}.option{display:block;margin-bottom:17px}.option>span,.quantity>span{font-size:14px;font-weight:900;display:block;margin-bottom:7px}.option>div{position:relative}.option select{width:100%;appearance:none;padding:14px 42px 14px 14px;border:1px solid #d4dbd7;border-radius:8px;background:#fafbfa;font-weight:700;color:var(--ink)}.option svg{position:absolute;right:14px;top:14px;pointer-events:none}.upload{border:1px dashed #98afa4;background:#f3f8f5;border-radius:9px;padding:15px;display:flex;align-items:center;gap:12px;margin:5px 0 18px;cursor:pointer;color:var(--green)}.upload span{display:flex;flex-direction:column}.upload small{color:var(--muted);margin-top:3px}.upload input{display:none}.quantity{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px}.quantity>div{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.quantity button,.quantity b{border:0;background:#f4f6f5;width:40px;height:38px;display:grid;place-items:center}.quantity b{background:#fff}.price{margin:20px -30px;padding:22px 30px;background:#f3f6f4;display:grid;grid-template-columns:1fr auto;align-items:end}.price span{font-size:14px;font-weight:800}.price strong{font-size:31px}.price small{grid-column:1/-1;color:var(--muted);font-size:12px;margin-top:7px}.full{width:100%}.whatsapp-line{display:flex;justify-content:center;gap:7px;margin-top:16px;color:var(--green);font-size:14px;font-weight:800;text-decoration:none}.pack{margin:82px max(7vw,30px);background:var(--green);color:#fff;border-radius:20px;padding:60px;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.pack p{color:#cbe7da;line-height:1.6;font-size:16px}.white{background:#fff;color:var(--green);margin-top:14px}.pack-list{display:grid;gap:18px}.pack-list span{display:flex;gap:10px;font-weight:700}.pack-list svg{background:#ffffff22;border-radius:50%;padding:3px}.process{text-align:center}.process>.kicker{justify-content:center}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:45px}.steps article{padding:10px 35px;border-right:1px solid var(--line)}.steps article:last-child{border:0}.steps b{color:var(--green);font-size:13px}.steps h3{font-size:23px;margin:10px}.steps p{color:var(--muted);font-size:15px;line-height:1.5}.contact{margin-top:25px;padding:60px max(8vw,30px);background:#f4f6f5;display:flex;align-items:center;justify-content:space-between;gap:40px}.contact span{color:var(--green);font-weight:800}.contact h2{font-size:36px}.contact p{color:var(--muted);font-size:16px}.whatsapp{background:#1fae66;color:#fff;white-space:nowrap}footer{padding:45px max(7vw,30px);background:var(--ink);color:#aab6c1;display:flex;align-items:center;gap:35px}footer .inverse{color:#fff}footer small{margin-left:auto}.float-whatsapp{position:fixed;right:22px;bottom:22px;background:#1fae66;color:#fff;width:55px;height:55px;border-radius:50%;display:grid;place-items:center;box-shadow:0 8px 25px #0b553255;z-index:30}

.cart{position:relative}.cart>b{min-width:21px;height:21px;border-radius:50%;background:var(--yellow);color:var(--ink);display:grid;place-items:center;font-size:12px}.product-choice{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit;text-decoration:none}.product-info span{float:right;margin-top:-30px;color:var(--green);font-weight:800;display:flex;gap:5px}.added-message{display:flex;align-items:center;gap:10px;margin-top:13px;border-radius:9px;background:#eaf7f0;color:#145d40;padding:12px 14px;font-size:13px}.added-message>span{display:flex;flex-direction:column;flex:1}.added-message button{border:0;background:none;color:var(--green);font-weight:900;cursor:pointer;white-space:nowrap}.cart-layer{position:fixed;inset:0;background:#07121e99;z-index:60;display:flex;justify-content:flex-end}.cart-panel{width:min(480px,100%);height:100%;background:#fff;padding:28px;overflow:auto;box-shadow:-20px 0 50px #0003}.cart-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--line)}.cart-head small{color:var(--green);font-weight:900;letter-spacing:.12em}.cart-head h2{font-size:35px;margin:5px 0 0}.cart-head button,.remove-item{border:0;background:#f1f4f2;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;cursor:pointer}.empty-cart{text-align:center;padding:80px 20px;color:var(--muted)}.empty-cart>svg{color:var(--green);width:42px;height:42px}.empty-cart h3{color:var(--ink);font-size:22px}.cart-items{display:grid}.cart-items article{display:grid;grid-template-columns:82px 1fr 38px;gap:13px;padding:20px 0;border-bottom:1px solid var(--line);align-items:start}.cart-items .sign{width:82px;padding:7px;border-width:4px;box-shadow:none}.cart-items .sign-icon{font-size:20px;margin:0}.cart-items .sign strong{font-size:8px}.cart-items .sign small{display:none}.cart-items h3{font-size:16px;margin:0 0 7px}.cart-items p{font-size:12px;color:var(--muted);margin:3px 0}.cart-items strong{display:block;margin-top:7px}.cart-total{display:flex;justify-content:space-between;align-items:center;padding:23px 0}.cart-total span{font-weight:800}.cart-total strong{font-size:27px}.continue-shopping{width:100%;border:0;background:none;color:var(--green);font-weight:800;padding:16px;cursor:pointer;display:block;text-align:center;text-decoration:none}

.submenu a{border:0;background:transparent;text-align:left;padding:12px;border-radius:8px;color:#283442;font-weight:700;font-size:14px;display:flex;align-items:center;gap:9px;cursor:pointer;text-decoration:none}.submenu a:hover{background:#f1f6f3;color:var(--green)}.submenu a.view-all{border-top:1px solid var(--line);border-radius:0;margin-top:6px;padding-top:15px;color:var(--green);justify-content:space-between}.product-breadcrumb{max-width:1320px;margin:0 auto;padding:26px max(4vw,24px) 12px;display:flex;gap:9px;align-items:center;color:var(--muted);font-size:14px}.product-breadcrumb a{color:var(--muted);text-decoration:none}.product-breadcrumb b{color:var(--ink)}.product-detail{max-width:1320px;margin:0 auto;padding:24px max(4vw,24px) 78px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(410px,.92fr);gap:70px;align-items:start}.detail-gallery{position:sticky;top:108px}.detail-stage{height:560px;border-radius:18px;background:linear-gradient(145deg,#f4f7f5,#e5ebe7);display:grid;place-items:center;overflow:hidden;border:1px solid var(--line)}.detail-stage>.sign{width:62%;max-width:430px}.detail-stage.installed-view{background:#d9ddd9}.installed-wall{width:88%;height:82%;background:linear-gradient(145deg,#f8f8f5,#cfd5d1);box-shadow:inset -28px -22px 60px #66746c25,12px 16px 35px #26372f20;display:grid;place-items:center;position:relative}.installed-wall>.sign{width:48%}.installation-note{position:absolute;bottom:16px;left:18px;background:#ffffffdd;padding:7px 10px;border-radius:7px;color:var(--muted);font-size:12px;font-weight:700}.gallery-tabs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.gallery-tabs>button{border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px;display:flex;align-items:center;gap:11px;text-align:left;color:var(--ink);font-weight:800;cursor:pointer}.gallery-tabs>button.active{border-color:var(--green);box-shadow:0 0 0 2px #087a501a}.gallery-tabs>button>span{width:70px;height:55px;background:#eef2ef;border-radius:7px;display:grid;place-items:center;overflow:hidden;flex:none}.gallery-tabs .sign{width:55px;padding:3px;border-width:3px;box-shadow:none}.gallery-tabs .sign-icon{font-size:12px;margin:0}.gallery-tabs .sign strong{font-size:5px}.gallery-tabs .sign small{display:none}.mini-wall{background:#d7dcd8!important}.photo-note{font-size:12px;color:var(--muted);line-height:1.45;margin:12px 2px}.product-category{color:var(--green);font-size:13px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.detail-buybox>h1{font-size:clamp(38px,4.4vw,62px);line-height:1.02;letter-spacing:-.045em;margin:12px 0 16px}.product-description{color:var(--muted);font-size:17px;line-height:1.6;margin:0}.detail-trust{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0}.detail-trust span{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:#334238}.detail-trust svg{width:18px;color:var(--green)}.detail-config{border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 16px 45px #19302414}.config-title{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:20px}.config-title>span{font-size:13px;font-weight:900;letter-spacing:.11em;color:var(--green)}.config-title p{font-size:14px;color:var(--muted);margin:6px 0 0}.detail-price{margin:20px -26px;padding:22px 26px}.continue-product-shopping{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:17px;color:var(--green);font-size:14px;font-weight:800;text-decoration:none}.buybox-notes{display:grid;gap:11px;margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.buybox-notes span{display:grid;grid-template-columns:24px auto 1fr;gap:7px;color:var(--muted);font-size:13px;align-items:center}.buybox-notes svg{width:19px;color:var(--green)}.buybox-notes b{color:var(--ink)}.product-info-section{background:var(--ink);color:#fff;padding:68px max(8vw,30px);display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.product-info-section h2{font-size:clamp(32px,4vw,50px);letter-spacing:-.04em;line-height:1.05;margin:12px 0}.product-info-section p{color:#b8c3ce;font-size:16px;line-height:1.7}.product-info-section dl{margin:0;display:grid;grid-template-columns:1fr 1fr;border:1px solid #ffffff22;border-radius:15px;overflow:hidden}.product-info-section dl>div{padding:22px;border-right:1px solid #ffffff22;border-bottom:1px solid #ffffff22}.product-info-section dl>div:nth-child(2n){border-right:0}.product-info-section dl>div:nth-last-child(-n+2){border-bottom:0}.product-info-section dt{color:#68d8aa;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.product-info-section dd{margin:7px 0 0;font-weight:700;line-height:1.4}.related{padding-top:75px}.not-found{min-height:100vh;display:grid;place-content:center;text-align:center;padding:30px}.not-found h1{font-size:42px;letter-spacing:-.04em;margin:0}.not-found p{color:var(--muted)}
.one-time-fee{display:flex;gap:11px;align-items:flex-start;background:#fff8dc;border:1px solid #efd170;border-radius:10px;padding:14px;margin:-3px 0 17px;color:#55420b}.one-time-fee>svg{color:#a97800;flex:none;margin-top:1px}.one-time-fee strong{font-size:15px}.one-time-fee p{font-size:13px;line-height:1.45;margin:4px 0 0;color:#6b591f}.one-time-breakdown{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid var(--line);padding:17px 0 0;margin-top:17px}.one-time-breakdown>span{font-size:14px;font-weight:800;display:grid;gap:4px}.one-time-breakdown small{font-size:11px;letter-spacing:.04em;color:#8a6900}.one-time-breakdown>b{white-space:nowrap;color:var(--green)}.cart-items .cart-one-time{color:#7b6108;background:#fff7d5;border-radius:5px;padding:4px 6px;font-weight:700}
@media(max-width:900px){.menu-button{display:block;margin-left:auto}.header{height:68px}.nav{display:none;position:absolute;left:0;top:68px;width:100%;padding:18px 25px 25px;background:#fff;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 15px 30px #0002}.nav.open{display:flex}.nav>a,.nav-trigger{padding:14px 0;border-bottom:1px solid var(--line);width:100%;justify-content:space-between}.nav-dropdown{width:100%}.submenu,.submenu.show,.nav-dropdown:hover .submenu,.nav-dropdown:focus-within .submenu{position:static;width:100%;box-shadow:none;border:0;border-radius:0;padding:6px 0 8px 14px;background:#f6f8f7}.submenu{display:none}.submenu.show{display:grid}.submenu button,.submenu a{font-size:14px;padding:11px}.cart span{display:none}.hero{grid-template-columns:1fr;padding-top:50px}.hero-art{margin-top:35px;height:330px}.trust{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr 1fr}.config-wrap{grid-template-columns:1fr}.config-intro>.sign{display:none}.pack{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.steps article:nth-child(2){border-right:0}.contact{flex-direction:column;align-items:flex-start}footer{flex-wrap:wrap}footer small{margin-left:0;width:100%}.product-detail{grid-template-columns:1fr;gap:42px}.detail-gallery{position:static}.detail-stage{height:500px}.product-info-section{grid-template-columns:1fr;gap:35px}}
@media(max-width:580px){.topbar{font-size:10px}.header{padding:0 18px}.hero{padding:45px 20px}.hero h1{font-size:48px}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column}.hero-notes{flex-direction:column;gap:8px}.hero-art{height:270px}.seal{width:105px;height:105px}.trust{grid-template-columns:1fr;padding:22px}.trust>div{justify-content:flex-start}.section{padding:65px 20px}.section-head{align-items:flex-start}.section-head>a{display:none}.product-grid{grid-template-columns:1fr}.config-wrap{padding:65px 20px}.config-card{padding:20px}.price{margin:20px -20px;padding:20px}.price strong{font-size:26px}.pack{margin:55px 20px;padding:35px 25px}.steps{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:1px solid var(--line)}.contact{padding:45px 20px}.contact h2{font-size:31px}footer{padding:38px 20px}.product-breadcrumb{padding:18px 20px 8px;overflow:hidden;white-space:nowrap}.product-breadcrumb b{overflow:hidden;text-overflow:ellipsis}.product-detail{padding:18px 20px 55px;gap:28px}.detail-stage{height:330px}.detail-stage>.sign{width:72%}.gallery-tabs>button{font-size:12px;display:grid}.gallery-tabs>button>span{width:100%;height:52px}.detail-buybox>h1{font-size:39px}.detail-config{padding:20px}.detail-price{margin:20px -20px;padding:20px}.detail-trust{display:grid}.buybox-notes span{grid-template-columns:24px 1fr}.buybox-notes span>b{grid-column:2}.product-info-section{padding:55px 20px}.product-info-section dl{grid-template-columns:1fr}.product-info-section dl>div{border-right:0;border-bottom:1px solid #ffffff22!important}.product-info-section dl>div:last-child{border-bottom:0!important}}

/* Integración WordPress + Astra + WooCommerce */
body.cartelix-site{background:#fff;color:var(--ink)}
.cartelix-site .site-content,.cartelix-site .ast-container{max-width:none;padding:0}
.cartelix-site .custom-logo-link{display:block}.cartelix-site .custom-logo-link img{width:194px;max-width:194px;height:auto}
.menu-button{width:42px;height:42px;padding:10px}.menu-button span{display:block;height:2px;background:var(--ink);margin:5px 0;border-radius:2px}
.trust i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#ffffff12;color:#58d6dc;font-style:normal;font-weight:900}
.dot-prohibicion,.dot-incendio{background:#c92e2e}.dot-emergencia{background:#087a50}.dot-uso-obligatorio{background:#176aa6}
.catalog-search>span{font-size:27px;line-height:1;color:var(--green)}
.initial-empty{grid-column:1/-1}
.cartelix-product-card[hidden]{display:none!important}
.future-lines{margin:0 max(7vw,30px) 82px}
.footer-brand img{display:block;width:194px;height:auto;filter:brightness(0) invert(1)}
.float-whatsapp{font-size:12px;font-weight:900;text-decoration:none}
.cartelix-icon { display: block; width: 1em; height: 1em; flex: none; }
.header > .cart .cartelix-icon-cart { width: 20px; height: 20px; }
.whatsapp .cartelix-icon-whatsapp { width: 21px; height: 21px; }
.float-whatsapp .cartelix-icon-whatsapp { width: 29px; height: 29px; }

/* Catálogo WooCommerce */
.woocommerce .site-main,.woocommerce-page .site-main{max-width:1320px;margin:0 auto;padding:54px max(4vw,24px) 80px}
.woocommerce-products-header__title.page-title{font-size:clamp(38px,5vw,62px);letter-spacing:-.04em;color:var(--ink)}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;padding:0 0 19px!important;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;transition:.2s}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:0 14px 36px #192e2420}
.woocommerce ul.products li.product img{margin:0 0 18px!important;aspect-ratio:1.25;object-fit:contain;background:#f3f8f9}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0 18px!important;font-size:18px!important;color:var(--ink)}
.woocommerce ul.products li.product .price{display:block;margin:5px 18px 0!important;padding:0!important;background:none!important;color:var(--ink)!important;font-weight:900!important}
.woocommerce ul.products li.product .button{margin:16px 18px 0!important;background:var(--green)!important;color:#fff!important;border-radius:8px!important}

/* Producto: ficha clara tipo publicación */
.single-product .site-main{max-width:1320px;margin:0 auto;padding:42px max(4vw,24px) 82px}
.single-product div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(410px,.95fr);gap:66px;align-items:start}
.single-product div.product .woocommerce-product-gallery,.single-product div.product .summary{width:auto!important;float:none!important;margin:0!important}
.single-product div.product .woocommerce-product-gallery{position:sticky;top:110px}
.single-product .woocommerce-product-gallery__wrapper{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#f3f8f9}
.single-product .woocommerce-product-gallery__image img{width:100%;aspect-ratio:1.08;object-fit:contain}
.single-product div.product .product_title{font-size:clamp(38px,4.4vw,60px);line-height:1.02;letter-spacing:-.045em;color:var(--ink);margin:0 0 16px}
.single-product div.product p.price{background:none;margin:0 0 18px;padding:0;color:var(--green);display:block;font-size:31px;font-weight:900}
.single-product .woocommerce-product-details__short-description{color:var(--muted);font-size:17px;line-height:1.6}
.single-product form.cart{border:1px solid var(--line);border-radius:16px;padding:25px;box-shadow:0 16px 45px #19302414;margin-top:24px!important}
.single-product table.variations{margin:0!important}.single-product table.variations th,.single-product table.variations td{display:block;width:100%;padding:0 0 8px!important;text-align:left;background:none!important;border:0!important}
.single-product table.variations th label,.cartelix-personalization label>strong{font-size:14px;font-weight:900;color:var(--ink)}
.single-product table.variations select,.cartelix-personalization select,.cartelix-personalization textarea{width:100%;border:1px solid #d4dbd7;border-radius:8px;background:#fafbfa;color:var(--ink);padding:13px 14px;margin:6px 0 15px}
.single-product .single_variation_wrap .woocommerce-variation-price{margin:12px 0}.single-product .single_variation_wrap .price{font-size:27px}
.single-product form.cart .quantity{float:none!important;display:inline-flex;margin-right:10px!important;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.single-product form.cart .quantity input{height:46px;border:0}
.single-product form.cart .single_add_to_cart_button{min-height:46px;background:var(--green)!important;border-radius:8px!important;font-weight:900!important;padding:0 23px!important}
.cartelix-personalization{clear:both;border-top:1px solid var(--line);padding-top:19px;margin-top:13px}
.cartelix-upload,.cartelix-notes{display:block;margin:0 0 14px}.cartelix-upload[hidden]{display:none}
.cartelix-upload{border:1px dashed #98afa4;background:#f3f8f5;border-radius:9px;padding:15px;color:var(--green)}
.cartelix-upload input{display:block;margin:10px 0 5px}.cartelix-upload small{display:block;color:var(--muted)}
.cartelix-notes textarea{resize:vertical}
.single-product .woocommerce-tabs,.single-product .related.products,.single-product .up-sells{grid-column:1/-1}
.single-product .related.products ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
.woocommerce-message,.woocommerce-info{border-top-color:var(--green)!important}.woocommerce-message:before,.woocommerce-info:before{color:var(--green)!important}

.cartelix-product-page > .woocommerce-notices-wrapper {
  max-width: 1320px;
  margin: 0 auto;
  padding: 22px max(4vw, 24px) 0;
}
.woocommerce-message:has(.cartelix-added-confirmation) {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.woocommerce-message:has(.cartelix-added-confirmation)::before { display: none !important; }
.cartelix-added-confirmation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px;
  border: 1px solid #a8ddc5;
  border-radius: 14px;
  background: #edf9f3;
  color: var(--ink);
  box-shadow: 0 12px 30px #061b2d0d;
}
.cartelix-added-copy { display: flex; align-items: center; gap: 12px; }
.cartelix-added-copy > i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex: none;
  border-radius: 50%;
  background: var(--green2);
  color: #fff;
  font-style: normal;
  font-weight: 900;
}
.cartelix-added-copy span { display: grid; gap: 3px; }
.cartelix-added-copy strong { font-size: 16px; }
.cartelix-added-copy small { color: var(--muted); font-size: 13px; }
.cartelix-added-actions { display: flex; gap: 10px; flex: none; }
.cartelix-added-actions .button { min-height: 44px; padding: 11px 16px; }
.cartelix-continue-shopping { clear: both; margin: 18px 0 28px; }

@media (max-width: 720px) {
  .cartelix-added-confirmation { align-items: stretch; flex-direction: column; }
  .cartelix-added-actions { display: grid; grid-template-columns: 1fr; }
  .cartelix-added-actions .button { width: 100%; }
}

@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.single-product div.product{grid-template-columns:1fr;gap:36px}.single-product div.product .woocommerce-product-gallery{position:static}}
@media(max-width:580px){.woocommerce ul.products{grid-template-columns:1fr}.single-product .site-main{padding:24px 20px 55px}.single-product div.product .product_title{font-size:38px}.single-product form.cart{padding:19px}.single-product form.cart .single_add_to_cart_button{width:100%;margin-top:10px}.future-lines{margin:0 20px 55px}}

:root {
  --ink: #061b2d;
  --green: #0cb1b7;
  --green2: #079ba2;
  --yellow: #58d6dc;
  --paper: #f3f8f9;
  --muted: #61727d;
  --line: #d9e6e8;
  --safety-green: #087a50;
}

.brand {
  display: inline-flex;
  align-items: center;
  flex: none;
}

.brand img {
  display: block;
  width: 194px;
  height: auto;
}

.header {
  height: 84px;
  gap: 24px;
  border-bottom-color: #dce9eb;
}

.nav { gap: 18px; }
.nav > a { font-size: 14px; white-space: nowrap; }

.sign { color: var(--safety-green); }
.sign-blue { color: #176aa6; }
.sign-yellow { color: #151515; background: #ffd12b; }
.sign-red { color: #c92e2e; }

.hero {
  position: relative;
  isolation: isolate;
  min-height: 650px;
  grid-template-columns: minmax(410px, .88fr) minmax(560px, 1.12fr);
  gap: clamp(30px, 4vw, 70px);
  background:
    radial-gradient(circle at 78% 12%, #9de9ec66, transparent 29%),
    linear-gradient(108deg, #ffffff 0%, #f4fbfc 48%, #e6f9fa 100%);
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .32;
  background-image: repeating-linear-gradient(120deg, transparent 0 58px, #0cb1b70b 58px 59px);
}

.hero-copy { position: relative; z-index: 3; }
.hero-copy > p { color: #506674; }
.hero h1 em { color: #0babb1; }

.hero-art {
  height: 520px;
  position: relative;
  display: block;
  overflow: visible;
}

.hero-art::before {
  content: "";
  position: absolute;
  width: 68%;
  height: 72%;
  right: 2%;
  top: 11%;
  border-radius: 50%;
  background: #0cb1b755;
  filter: blur(70px);
}

.scene-card {
  position: absolute;
  margin: 0;
  overflow: hidden;
  background: var(--ink);
  box-shadow: 0 24px 60px #061b2d35;
}

.scene-card img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.scene-card figcaption {
  position: absolute;
  right: 14px;
  bottom: 14px;
  display: grid;
  gap: 2px;
  min-width: 118px;
  padding: 10px 13px;
  border: 1px solid #ffffff42;
  border-radius: 9px;
  background: #061b2dcf;
  color: #fff;
  backdrop-filter: blur(10px);
}

.scene-card figcaption span {
  color: #78e1e5;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.scene-card figcaption b { font-size: 14px; }

.scene-main {
  inset: 20px 18px 35px 22px;
  border-radius: 24px 6px 24px 24px;
}

.scene-main img {
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 17%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 17%, #000 100%);
}

.scene-main::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(120deg, #061b2d60 0%, transparent 36%, transparent 72%, #0cb1b720 100%);
}

.scene-main figcaption { z-index: 2; }

.scene-ppe {
  width: 43%;
  height: 190px;
  left: -18px;
  bottom: -22px;
  z-index: 3;
  border: 6px solid #fff;
  border-radius: 16px;
}

.scene-fire {
  width: 34%;
  height: 166px;
  right: -12px;
  top: -10px;
  z-index: 3;
  border: 6px solid #e8fbfc;
  border-radius: 16px;
}

.scene-ppe figcaption,
.scene-fire figcaption { display: none; }

.experience-chip {
  position: absolute;
  right: 28px;
  bottom: 1px;
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 15px;
  border-radius: 12px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 14px 35px #061b2d35;
}

.experience-chip svg { color: var(--green); }
.experience-chip span { font-size: 12px; }
.experience-chip strong { font-size: 17px; }

.trust {
  background: var(--ink);
  border: 0;
}

.trust svg { color: #58d6dc; }
.trust span { color: #aabfc7; }
.trust b { color: #fff; }

.product-image {
  background: linear-gradient(145deg, #f3f8f9, #e6f1f2);
}

.product-photo {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.photo-stage { background: #f3f6f7; }
.photo-stage > img { width: 100%; height: 100%; display: block; object-fit: contain; }
.gallery-tabs-four { grid-template-columns: repeat(4, 1fr); }
.gallery-tabs-four > button { min-width: 0; padding: 8px; display: grid; gap: 7px; font-size: 12px; }
.gallery-tabs-four > button > .photo-thumb { width: 100%; height: 76px; }
.photo-thumb img { width: 100%; height: 100%; display: block; object-fit: cover; }

.custom-design-banner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin: 0 0 30px;
  padding: 20px 22px;
  border: 1px solid #bde8ea;
  border-radius: 14px;
  background: linear-gradient(105deg, #eafafb 0%, #f8fdfd 52%, #fff 100%);
  box-shadow: 0 12px 30px #061b2d0b;
}

.custom-design-icon {
  width: 50px;
  height: 50px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: var(--green);
  color: #fff;
  box-shadow: 0 8px 20px #0cb1b72b;
}

.custom-design-banner small {
  color: var(--green2);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
}

.custom-design-banner h3 {
  margin: 4px 0 5px;
  color: var(--ink);
  font-size: 20px;
  line-height: 1.2;
}

.custom-design-banner p {
  margin: 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.5;
}

.custom-design-action {
  background: var(--ink);
  color: #fff;
  white-space: nowrap;
}

.custom-design-action:hover { background: #0c3049; }

.future-lines {
  margin: 8px max(7vw, 30px) 82px;
  padding: 38px 42px;
  border: 1px solid var(--line);
  border-radius: 18px;
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr);
  gap: 42px;
  align-items: center;
  background: #f7fbfb;
}

.future-lines h2 {
  margin: 9px 0 10px;
  color: var(--ink);
  font-size: clamp(28px, 3vw, 40px);
  letter-spacing: -.04em;
}

.future-lines > div > p {
  margin: 0;
  color: var(--muted);
  font-size: 15px;
  line-height: 1.6;
}

.future-line-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.future-line-list > a {
  min-height: 118px;
  padding: 18px;
  border: 1px solid #cfe3e5;
  border-radius: 12px;
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: inherit;
  text-decoration: none;
  transition: .2s ease;
}

.future-line-list > a:hover { transform: translateY(-3px); border-color: var(--green); box-shadow: 0 12px 28px #061b2d12; }

.future-line-list span {
  color: var(--green2);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
}

.future-line-list h3 {
  margin: 20px 0 0;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.2;
}

.future-line-list b {
  margin-top: 16px;
  color: var(--green2);
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
}

.line-hero {
  padding: 58px max(7vw, 30px) 44px;
  background: linear-gradient(112deg, #f0fafb, #fff 65%);
  border-bottom: 1px solid var(--line);
}

.line-breadcrumb { margin: 0 0 28px; color: var(--muted); font-size: 14px; }
.line-breadcrumb a { color: var(--muted); text-decoration: none; }
.line-breadcrumb span { margin: 0 8px; }
.line-hero h1 { margin: 12px 0 14px; color: var(--ink); font-size: clamp(40px, 5vw, 66px); letter-spacing: -.05em; line-height: 1; }
.line-hero > p { max-width: 700px; margin: 0; color: var(--muted); font-size: 17px; line-height: 1.65; }

.line-catalog { min-height: 470px; }
.line-catalog-head { margin-bottom: 24px; }
.line-catalog-head h2 { margin-bottom: 8px; }
.line-empty {
  min-height: 245px;
  padding: 42px;
  border: 1px dashed #b9d7d9;
  border-radius: 16px;
  background: #f7fbfb;
  display: grid;
  place-items: center;
  text-align: center;
}
.line-empty > div { max-width: 560px; }
.line-empty svg { color: var(--green); }
.line-empty h3 { margin: 14px 0 8px; color: var(--ink); font-size: 24px; }
.line-empty p { margin: 0 0 20px; color: var(--muted); font-size: 15px; line-height: 1.6; }

.footer-brand {
  width: 210px;
  padding: 10px 13px;
  border-radius: 9px;
  background: #fff;
  flex: none;
}

.footer-brand img {
  display: block;
  width: 100%;
  height: auto;
}

@media (max-width: 1050px) {
  .hero { grid-template-columns: minmax(380px, .9fr) minmax(470px, 1.1fr); }
  .scene-fire { width: 38%; }
}

@media (max-width: 900px) {
  .header { height: 76px; }
  .nav { top: 76px; }
  .hero { grid-template-columns: 1fr; padding-top: 54px; }
  .hero-art { height: 500px; margin-top: 20px; }
  .scene-main { left: 7%; right: 1%; }
  .scene-ppe { left: 1%; }
  .scene-fire { right: 0; }
  .future-lines { grid-template-columns: 1fr; }
}

@media (max-width: 580px) {
  .brand img { width: 165px; }
  .header { height: 70px; }
  .nav { top: 70px; }
  .hero { padding-top: 38px; }
  .hero-art { height: 405px; margin-top: 12px; }
  .scene-main { inset: 0 0 72px 0; border-radius: 17px; }
  .scene-main img { -webkit-mask-image: none; mask-image: none; }
  .scene-main figcaption { right: 10px; bottom: 10px; }
  .scene-ppe { width: 52%; height: 132px; left: -3px; bottom: 0; border-width: 4px; }
  .scene-fire { width: 43%; height: 116px; right: -3px; top: auto; bottom: 28px; border-width: 4px; }
  .experience-chip { left: 14px; right: auto; top: 13px; bottom: auto; padding: 9px 11px; }
  .experience-chip span { font-size: 10px; }
  .experience-chip strong { font-size: 14px; }
  .footer-brand { width: 190px; }
  .custom-design-banner {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    padding: 18px;
  }
  .custom-design-icon { width: 46px; height: 46px; }
  .custom-design-banner h3 { font-size: 18px; }
  .custom-design-action { grid-column: 1 / -1; width: 100%; }
  .future-lines { margin: 0 20px 55px; padding: 28px 22px; gap: 26px; }
  .future-line-list { grid-template-columns: 1fr; }
  .future-line-list > a { min-height: 96px; }
  .line-hero { padding: 38px 20px 34px; }
  .line-catalog { padding-top: 50px; }
  .line-empty { padding: 32px 20px; }
  .gallery-tabs-four { grid-template-columns: repeat(2, 1fr); }
  .gallery-tabs-four > button { display: flex; }
  .gallery-tabs-four > button > .photo-thumb { width: 62px; height: 52px; }
}

/* Ficha de producto CÁRTELIX 0.2 */
.cartelix-product-page {
  overflow: hidden;
  background: radial-gradient(circle at 7% 10%, #0cb1b70d, transparent 26%), #fff;
}
.cartelix-single-product { margin: 0; }
.cartelix-single-product .product-detail { padding-top: 18px; }
.cartelix-single-product .detail-gallery .woocommerce-product-gallery {
  position: static;
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}
.cartelix-single-product .woocommerce-product-gallery__wrapper {
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 20px;
  overflow: hidden;
  background: linear-gradient(145deg, #f4f9fa, #e7f1f2);
  box-shadow: 0 22px 55px #061b2d12;
}
.cartelix-single-product .woocommerce-product-gallery__image a { display: block; }
.cartelix-single-product .woocommerce-product-gallery__image img {
  display: block;
  width: 100%;
  aspect-ratio: 1.08;
  object-fit: contain;
}
.cartelix-single-product .flex-control-thumbs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  list-style: none;
}
.cartelix-single-product .flex-control-thumbs li {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: hidden;
  background: #f4f8f8;
}
.cartelix-single-product .flex-control-thumbs img {
  width: 100%;
  aspect-ratio: 1.2;
  object-fit: cover;
  opacity: .68;
  transition: .2s ease;
}
.cartelix-single-product .flex-control-thumbs img.flex-active,
.cartelix-single-product .flex-control-thumbs img:hover { opacity: 1; }
.cartelix-single-product .woocommerce-product-gallery__trigger {
  top: 16px !important;
  right: 16px !important;
  z-index: 4 !important;
}
.cartelix-single-product .product-category a { color: var(--green2); text-decoration: none; }
.cartelix-single-product .detail-trust i,
.cartelix-single-product .buybox-notes i {
  width: 20px;
  height: 20px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: #dff7f4;
  color: var(--safety-green);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  flex: none;
}
.cartelix-single-product .detail-config {
  background: #fff;
  border-color: #d2e3e5;
  box-shadow: 0 18px 50px #061b2d12;
}
.cartelix-single-product .detail-price {
  margin-top: 0;
  margin-bottom: 0;
  background: #f1f9f9;
  border-bottom: 1px solid var(--line);
}
.cartelix-single-product .detail-price:empty { display: none; }
.cartelix-single-product .detail-price .price {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--ink) !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
.cartelix-single-product form.cart {
  margin: 0 !important;
  padding: 22px 0 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  display: block !important;
  background: transparent !important;
  color: var(--ink) !important;
  font-weight: 400 !important;
}
.cartelix-single-product form.cart table.variations { margin: 0 !important; }
.cartelix-single-product form.cart table.variations tr { display: block; margin-bottom: 13px; }
.cartelix-single-product form.cart table.variations th,
.cartelix-single-product form.cart table.variations td {
  display: block;
  width: 100%;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  text-align: left;
}
.cartelix-single-product form.cart table.variations label,
.cartelix-single-product .ppom-label-item,
.cartelix-single-product .form-control-label {
  color: var(--ink);
  font-size: 14px;
  font-weight: 900;
}
.cartelix-single-product form.cart table.variations select,
.cartelix-single-product .ppom-wrapper select,
.cartelix-single-product .ppom-wrapper input:not([type="radio"]):not([type="checkbox"]),
.cartelix-single-product .ppom-wrapper textarea {
  width: 100%;
  min-height: 48px;
  margin: 7px 0 0;
  padding: 12px 14px;
  border: 1px solid #cbdadd;
  border-radius: 9px;
  background: #fbfdfd;
  color: var(--ink);
}
.cartelix-single-product form.cart .reset_variations {
  display: inline-block;
  margin-top: 8px;
  color: var(--green2);
  font-size: 12px;
  font-weight: 800;
}
.cartelix-single-product .woocommerce-variation-price .price {
  color: var(--green2) !important;
  font-size: 28px !important;
  font-weight: 900 !important;
}
.cartelix-single-product .single_variation .woocommerce-variation-price { display: none !important; }
.cartelix-single-product .cartelix-final-price {
  clear: both;
  width: 100%;
  margin: 18px 0;
  padding: 18px;
  border: 1px solid #9ddfe2;
  border-radius: 11px;
  background: #eefafa;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.cartelix-single-product .cartelix-final-price[hidden] { display: none !important; }
.cartelix-single-product .cartelix-final-price span {
  display: block;
  color: var(--ink);
  font-size: 15px;
  font-weight: 900;
}
.cartelix-single-product .cartelix-final-price small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}
.cartelix-single-product .cartelix-final-price strong {
  color: var(--green2);
  font-size: 34px;
  white-space: nowrap;
}
.cartelix-single-product form.cart .single_add_to_cart_button {
  width: 100%;
  margin-top: 0;
}
.cartelix-single-product .woocommerce-variation-add-to-cart { padding-top: 10px; }
.cartelix-single-product form.cart .quantity { min-height: 49px; margin: 0 10px 0 0 !important; }
.cartelix-single-product form.cart .single_add_to_cart_button {
  min-height: 49px;
  background: var(--green2) !important;
  color: #fff !important;
  border-radius: 9px !important;
  font-weight: 900 !important;
}
.cartelix-single-product form.cart .single_add_to_cart_button:hover { background: var(--ink) !important; }
.cartelix-single-product .stock.out-of-stock {
  margin: 10px 0 0;
  padding: 16px;
  border-radius: 10px;
  background: #fff4e7;
  color: #8a4d00;
  font-weight: 800;
}
.cartelix-single-product .ppom-wrapper { margin: 18px 0; padding: 18px 0 2px; border-top: 1px solid var(--line); }
.cartelix-single-product .ppom-wrapper .form-group { margin-bottom: 17px; }
.cartelix-single-product .ppom-wrapper .form-check { margin: 8px 0; }
.cartelix-single-product .cartelix-personalization {
  display: grid;
  gap: 13px;
  margin-top: 18px;
  padding-top: 18px;
}
.cartelix-single-product .cartelix-personalization > label { margin: 0; }
.cartelix-single-product .cartelix-personalization-help {
  margin: -4px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}
.cartelix-single-product .cartelix-material-guide {
  margin: 2px 0 18px;
  padding: 18px;
  border: 1px solid #cfdcd5;
  border-radius: 12px;
  background: #f5f9f7;
}
.cartelix-single-product .cartelix-material-guide > strong {
  display: block;
  margin-bottom: 12px;
  color: var(--ink);
  font-size: 15px;
}
.cartelix-single-product .cartelix-material-guide > div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.cartelix-single-product .cartelix-material-guide article {
  padding: 13px;
  border-radius: 9px;
  background: #fff;
  border: 1px solid var(--line);
}
.cartelix-single-product .cartelix-material-guide b { color: var(--green); font-size: 13px; }
.cartelix-single-product .cartelix-material-guide p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.cartelix-single-product .cartelix-material-guide > small {
  display: block;
  margin-top: 11px;
  color: #44554c;
  font-size: 11px;
  line-height: 1.45;
}
.cartelix-single-product #cartelix_design_service {
  display: block;
  width: 100%;
  min-height: 48px;
  margin: 7px 0 0;
  padding: 12px 14px;
  line-height: 1.25;
}
.cartelix-single-product .cartelix-personalization .one-time-fee {
  margin: 0;
  align-items: flex-start;
}
.cartelix-single-product .cartelix-upload,
.cartelix-single-product .cartelix-notes { margin: 0; }
.cartelix-single-product .one-time-fee[hidden],
.cartelix-single-product .cartelix-upload[hidden],
.cartelix-single-product .cartelix-notes[hidden] { display: none !important; }
.cartelix-single-product .buybox-notes span { grid-template-columns: 24px auto 1fr; }
.cartelix-single-product .product-long-description p:last-child { margin-bottom: 0; }
.cartelix-product-reviews,
.cartelix-related-products {
  max-width: 1320px;
  margin: 0 auto;
  padding: 70px max(4vw, 24px);
}
.cartelix-product-reviews + .cartelix-related-products { padding-top: 0; }
.cartelix-related-products > .related.products { padding: 0; }
.cartelix-related-products h2,
.cartelix-product-reviews h2 {
  color: var(--ink);
  font-size: clamp(30px, 4vw, 44px);
  letter-spacing: -.04em;
}
.cartelix-product-reviews .comment-respond { max-width: 760px; }

@media (max-width: 900px) {
  .cartelix-single-product .product-detail { grid-template-columns: 1fr; gap: 38px; }
  .cartelix-single-product .detail-gallery { position: static; }
  .cartelix-single-product form.cart span:not(.screen-reader-text) { display: revert; }
}

@media (max-width: 580px) {
  .cartelix-single-product .product-detail { padding: 16px 20px 52px; }
  .cartelix-single-product .detail-buybox > h1 { font-size: 38px; }
  .cartelix-single-product .detail-config { padding: 19px; }
  .cartelix-single-product .detail-price { margin-right: -19px; margin-left: -19px; padding-right: 19px; padding-left: 19px; }
  .cartelix-single-product form.cart .quantity { width: 100%; margin: 0 0 10px !important; justify-content: center; }
  .cartelix-single-product form.cart .single_add_to_cart_button { width: 100%; }
  .cartelix-single-product .buybox-notes span { grid-template-columns: 24px 1fr; }
  .cartelix-single-product .buybox-notes span b { grid-column: 2; }
  .cartelix-single-product .cartelix-material-guide > div { grid-template-columns: 1fr; }
  .cartelix-product-reviews,
  .cartelix-related-products { padding: 52px 20px; }
}

/* 0.3.1 — fijaciones vinculadas a la medida y archivo de Tienda legible. */
.cartelix-single-product .cartelix-fixation-hidden {
  display: none !important;
}

body.cartelix-site.woocommerce-shop,
body.cartelix-site.post-type-archive-product,
body.cartelix-site.tax-product_cat {
  background: #f7fafb !important;
}

body.cartelix-site.woocommerce-shop #content,
body.cartelix-site.post-type-archive-product #content,
body.cartelix-site.tax-product_cat #content,
body.cartelix-site.woocommerce-shop .site-content,
body.cartelix-site.post-type-archive-product .site-content,
body.cartelix-site.tax-product_cat .site-content {
  min-height: 70vh;
  margin: 0 !important;
  padding: 0 !important;
  background: linear-gradient(180deg, #f4f9fa 0%, #ffffff 100%) !important;
}

body.cartelix-site.woocommerce-shop .ast-container,
body.cartelix-site.post-type-archive-product .ast-container,
body.cartelix-site.tax-product_cat .ast-container,
body.cartelix-site.woocommerce-shop #primary,
body.cartelix-site.post-type-archive-product #primary,
body.cartelix-site.tax-product_cat #primary {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body.cartelix-site.woocommerce-shop .site-main,
body.cartelix-site.post-type-archive-product .site-main,
body.cartelix-site.tax-product_cat .site-main {
  width: min(1320px, 100%) !important;
  margin: 0 auto !important;
  padding: 58px max(4vw, 24px) 82px !important;
  background: transparent !important;
}

body.cartelix-site.woocommerce-shop .woocommerce-products-header,
body.cartelix-site.post-type-archive-product .woocommerce-products-header,
body.cartelix-site.tax-product_cat .woocommerce-products-header {
  margin: 0 0 32px;
  padding: 0;
  background: transparent !important;
}

body.cartelix-site.woocommerce-shop .woocommerce-products-header__title,
body.cartelix-site.post-type-archive-product .woocommerce-products-header__title,
body.cartelix-site.tax-product_cat .woocommerce-products-header__title {
  margin: 0;
  color: var(--ink) !important;
}

body.cartelix-site.woocommerce-shop .woocommerce-result-count,
body.cartelix-site.post-type-archive-product .woocommerce-result-count,
body.cartelix-site.tax-product_cat .woocommerce-result-count {
  color: #40505f !important;
  font-weight: 700;
}

body.cartelix-site.woocommerce-shop .woocommerce-ordering select,
body.cartelix-site.post-type-archive-product .woocommerce-ordering select,
body.cartelix-site.tax-product_cat .woocommerce-ordering select {
  min-height: 44px;
  padding: 9px 38px 9px 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background-color: #fff;
  color: var(--ink);
}

@media (max-width: 580px) {
  body.cartelix-site.woocommerce-shop .site-main,
  body.cartelix-site.post-type-archive-product .site-main,
  body.cartelix-site.tax-product_cat .site-main {
    padding: 36px 20px 58px !important;
  }
}

/* 0.3.2 — pie institucional, información legal y formularios. */
.cartelix-footer {
  display: block;
  padding: 0;
  background: var(--ink);
  color: #c5d0dc;
}

.cartelix-footer-main {
  max-width: 1450px;
  margin: 0 auto;
  padding: 54px max(5vw, 28px) 42px;
  display: grid;
  grid-template-columns: 1.25fr 1fr 1.1fr 1fr;
  gap: clamp(28px, 4vw, 62px);
  align-items: start;
}

.cartelix-footer .footer-brand {
  width: 205px;
  margin: 0 0 18px;
  padding: 10px 14px;
  border-radius: 8px;
  background: #fff;
}

.cartelix-footer .footer-brand img {
  width: 100%;
  height: auto;
  filter: none;
}

.cartelix-footer-branding p,
.cartelix-footer-note {
  margin: 0;
  color: #93a5b7;
  font-size: 13px;
  line-height: 1.55;
}

.cartelix-instagram {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 17px;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.cartelix-instagram:hover { color: #58d6dc; }

.cartelix-instagram .cartelix-icon,
.cartelix-footer-list .cartelix-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: #58d6dc;
}

.cartelix-footer-column h2 {
  margin: 3px 0 18px;
  color: #fff;
  font-size: 15px;
  letter-spacing: .01em;
}

.cartelix-footer-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 11px;
  color: #b7c4d1;
  font-size: 13px;
}

.cartelix-footer-list li {
  display: flex;
  align-items: center;
  gap: 9px;
}

.cartelix-footer-list .cartelix-icon-whatsapp { color: #35d36f; }

.cartelix-footer-list a {
  color: inherit;
  text-decoration: none;
}

.cartelix-footer-list a:hover { color: #fff; text-decoration: underline; }

.cartelix-brand-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 13px;
}

.cartelix-brand-badge {
  width: 185px;
  min-height: 46px;
  padding: 7px 12px;
  border: 1px solid #ffffff24;
  border-radius: 7px;
  background: #fff;
  color: #102235;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  white-space: nowrap;
}

.cartelix-brand-badge img {
  display: block;
  width: auto;
  height: 31px;
  max-width: 145px;
  object-fit: contain;
}

.cartelix-gocuotas img { height: 31px; }
.cartelix-transferencia {
  gap: 8px;
  color: #102d4a;
  font-size: 11px;
}
.cartelix-transferencia .cartelix-icon {
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  color: #0e9fa7;
}
.cartelix-correo { margin-bottom: 13px; border-color: #ffd400; background: #ffd400; }
.cartelix-correo img { height: 35px; max-width: 158px; }

.cartelix-footer-links {
  padding: 17px max(5vw, 28px);
  border-top: 1px solid #ffffff16;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 26px;
}

.cartelix-footer-links a {
  color: #c9d4de;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.cartelix-footer-links a:hover { color: #fff; text-decoration: underline; }

.cartelix-legal-strip {
  padding: 11px max(4vw, 22px);
  background: #06131f;
  color: #8394a6;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5px 20px;
  text-align: center;
}

.cartelix-data-fiscal {
  flex: 0 0 auto;
  width: 55px;
  height: 56px;
  overflow: hidden;
  line-height: 0;
  text-decoration: none !important;
  opacity: .76;
  transition: opacity .2s ease;
}

.cartelix-data-fiscal:hover,
.cartelix-data-fiscal:focus-visible { opacity: 1; }

.cartelix-data-fiscal img {
  display: block;
  width: auto;
  height: 56px;
  max-width: none;
  margin: 0;
  mix-blend-mode: screen;
}

.cartelix-legal-strip small {
  width: auto;
  margin: 0;
  font-size: 10px;
  line-height: 1.45;
}

.cartelix-legal-strip a {
  color: #adbdcb;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cartelix-legal-strip a:hover { color: #fff; }
.cartelix-legal-strip .cartelix-withdrawal-link { font-weight: 800; }

.cartelix-cookie-notice {
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 80;
  width: min(500px, calc(100vw - 40px));
  padding: 15px 16px;
  border: 1px solid #cad8df;
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 15px 45px #07162435;
  display: flex;
  align-items: center;
  gap: 16px;
}

.cartelix-cookie-notice[hidden] { display: none !important; }
.cartelix-cookie-notice p { margin: 0; font-size: 12px; line-height: 1.5; }
.cartelix-cookie-notice a { color: var(--green); }
.cartelix-cookie-notice button {
  flex: none;
  border: 0;
  border-radius: 7px;
  padding: 9px 12px;
  background: var(--ink);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.cartelix-legal-page {
  width: min(920px, calc(100% - 40px));
  margin: 0 auto;
  padding: 64px 0 82px;
  color: #243342;
}

.cartelix-legal-page .cartelix-legal-lead {
  margin: 0 0 34px;
  padding: 20px 22px;
  border-left: 4px solid #0cb1b7;
  border-radius: 0 9px 9px 0;
  background: #f0fafb;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.65;
}

.cartelix-legal-page h2 {
  margin: 34px 0 10px;
  color: var(--ink);
  font-size: 23px;
}

.cartelix-legal-page p { margin: 0 0 16px; font-size: 15px; line-height: 1.75; }
.cartelix-legal-page a { color: var(--green2); }

.cartelix-withdrawal-form-wrap {
  margin-top: 32px;
  padding: 26px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 12px 35px #0b18280e;
}

.cartelix-withdrawal-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 17px;
}

.cartelix-withdrawal-form label { display: grid; gap: 7px; }
.cartelix-withdrawal-form label > span { color: var(--ink); font-size: 13px; font-weight: 800; }
.cartelix-withdrawal-form input:not([type="checkbox"]),
.cartelix-withdrawal-form textarea {
  width: 100%;
  border: 1px solid #ccd6d1;
  border-radius: 8px;
  padding: 12px 13px;
  background: #fbfdfc;
  color: var(--ink);
}

.cartelix-withdrawal-form .wide { grid-column: 1 / -1; }
.cartelix-withdrawal-form .cartelix-consent { grid-template-columns: auto 1fr; align-items: start; }
.cartelix-withdrawal-form .cartelix-consent input { margin-top: 3px; }
.cartelix-honeypot { position: absolute !important; left: -9999px !important; }
.cartelix-form-notice { margin-bottom: 20px; padding: 14px 16px; border-radius: 8px; font-size: 14px; font-weight: 800; }
.cartelix-form-notice.success { background: #e8f7ef; color: #17603f; }
.cartelix-form-notice.error { background: #fff0f0; color: #9b2222; }

@media (max-width: 980px) {
  .cartelix-footer-main { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 580px) {
  .cartelix-footer-main { grid-template-columns: 1fr; padding: 42px 20px 34px; gap: 34px; }
  .cartelix-footer-links { justify-content: flex-start; padding: 16px 20px; }
  .cartelix-legal-strip { padding: 10px 18px; text-align: left; justify-content: flex-start; }
  .cartelix-cookie-notice { left: 12px; bottom: 12px; width: calc(100vw - 24px); align-items: flex-start; }
  .cartelix-legal-page { width: calc(100% - 40px); padding: 42px 0 58px; }
  .cartelix-withdrawal-form-wrap { padding: 19px; }
  .cartelix-withdrawal-form { grid-template-columns: 1fr; }
  .cartelix-withdrawal-form .wide { grid-column: auto; }
}
