@font-face{font-family:Montserrat;src:url('/assets/montserrat-600.woff2') format('woff2');font-weight:600;font-display:swap}@font-face{font-family:Montserrat;src:url('/assets/montserrat-700.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Montserrat;src:url('/assets/montserrat-800.woff2') format('woff2');font-weight:800;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fafbfd;color:#101820;font-family:Montserrat,Arial,sans-serif;font-weight:600;line-height:1.6}button,input,select,textarea{font:inherit}button,.button{border:0;background:#1850cf;color:white;padding:13px 20px;border-radius:8px;font-weight:800;cursor:pointer;display:inline-block;text-decoration:none}button:hover,.button:hover{background:#123d9e}button:disabled{background:#7a8492;cursor:wait}a{color:inherit}header{background:#080808;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:16px 6%;gap:24px}.brand img{width:240px;height:96px;object-fit:contain}nav{display:flex;align-items:center;gap:30px}nav a{text-decoration:none;font-weight:800}nav button{background:#08a9e6;color:#001b2b}main{max-width:1300px;margin:auto;padding:0 6%}h1,h2,h3{font-weight:800;line-height:1.15;letter-spacing:-1px}h1{font-size:clamp(40px,5vw,72px);margin:20px 0}h1 span{color:#08a9e6}h2{font-size:34px}h3{font-size:22px}.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:7%;padding:70px 0 80px;align-items:center}.hero>div>p:not(.eyebrow){max-width:500px;font-size:18px;margin:24px 0}.hero aside{background:#e7f5fd;border-radius:30px 4px 30px 4px;padding:40px;box-shadow:16px 16px 0 #d1ecfa}.hero aside h2{font-size:33px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:#1850cf}.pill{font-size:12px;display:inline-block;background:white;border-radius:30px;padding:8px 14px;margin-top:16px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-heading>p{max-width:330px;font-size:13px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:24px}.card{border:1px solid #e0e6ed;border-radius:12px;overflow:hidden;background:white}.card>img{width:100%;height:255px;object-fit:cover;background:#eff4f7}.card .inside{padding:22px}.card h3{margin:0 0 12px}.price{font-size:22px;font-weight:800}.combined{color:#1850cf;font-size:13px}.muted,.small{color:#536174;font-size:12px}.empty{padding:35px;background:#f1f6fa;border-radius:12px;color:#465c6d}.notice{background:#fff5d8;padding:12px 18px;border-radius:8px;font-size:12px}section{scroll-margin-top:20px}#ayudas{padding:70px 0}footer{background:#080808;color:white;padding:35px 6%;display:flex;gap:25px;align-items:center;flex-wrap:wrap;justify-content:space-between}footer a,.link{font-size:12px}.link{background:transparent;color:inherit;padding:0;text-decoration:underline}label{display:block;font-size:13px;margin:14px 0}input,textarea,select{display:block;width:100%;border:1px solid #c4d1de;background:white;border-radius:7px;padding:11px;margin-top:5px;color:#101820}textarea{min-height:100px}input[type=checkbox]{width:auto;display:inline;margin-right:10px}.check{display:flex;align-items:center}.total{font-weight:800;font-size:24px}dialog{border:0;border-radius:16px;padding:30px;width:min(560px,94vw);max-height:90vh;box-shadow:0 20px 100px #0005}dialog::backdrop{background:#071326b3}.close{float:right;background:#edf2f6;color:black;padding:4px 12px;font-size:24px}.cart-line{border-bottom:1px solid #ddd;padding:15px 0;display:flex;gap:15px;align-items:center;justify-content:space-between}.cart-line input{width:75px}.cart-line button{padding:7px;background:#edf2f6;color:#102537}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#101820;color:white;padding:15px 24px;border-radius:10px;z-index:5;max-width:92vw}#toast:empty{display:none}.admin{max-width:1100px;padding:30px;margin:auto}.admin-nav{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.admin-panel{border:1px solid #dbe4ee;border-radius:12px;padding:24px;margin:20px 0;background:white}.admin-panel details{border-top:1px solid #ddd;padding:16px 0}summary{cursor:pointer;font-weight:800}.row{display:flex;gap:12px;align-items:end}.row>*{flex:1}.gallery{display:flex;gap:10px;overflow:auto}.gallery img{width:120px;height:120px;object-fit:cover;border-radius:7px}.gallery figure{margin:0}.gallery button{font-size:11px;padding:5px}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:10px;border-bottom:1px solid #ddd}#auth{max-width:500px;margin:40px auto}pre{white-space:pre-wrap}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #08a9e6;outline-offset:3px}[hidden]{display:none!important}@media(max-width:700px){header{flex-direction:column;gap:10px}nav{gap:18px;font-size:12px}.brand img{height:80px}.hero{grid-template-columns:1fr;padding:35px 0 55px;gap:30px}.hero aside{padding:25px}.section-heading{display:block}h2{font-size:28px}.grid{grid-template-columns:1fr}.row{flex-wrap:wrap}.row>*{min-width:120px}.admin{padding:15px}}


.public-banner{padding-top:24px}.public-banner img,.banner-preview{display:block;width:100%;height:auto;object-fit:contain;background:#080808}.opening-hours{padding:28px 0 32px}.opening-hours h1{font-size:clamp(22px,3.5vw,38px);letter-spacing:-.5px}.opening-hours p{margin:10px 0}.banner-preview{margin:18px 0}

.public-banner{padding:0;margin:0;width:100%;background:#080808}.public-banner img{width:100%;height:auto;display:block}

.public-navigation{display:block;padding:14px 4%}.public-navigation nav{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:center;gap:clamp(10px,3vw,32px);font-size:clamp(10px,2.8vw,16px)}.public-navigation nav a,.public-navigation nav button{white-space:nowrap}.public-navigation nav button{padding:10px clamp(8px,2vw,20px)}.public-navigation nav button:disabled{background:#08a9e6;color:#001b2b;cursor:default}
.opening-hours{text-align:center}.opening-hours #pickup{white-space:pre-line;margin-top:22px}
.card>img{height:auto;aspect-ratio:1;object-fit:contain;background:#fff}
#products{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}#products .card{min-width:0;display:flex;flex-direction:column}#products .inside{flex:1;display:flex;flex-direction:column;overflow-wrap:anywhere}#products .inside>button{margin-top:auto;width:100%}.product-quantity input{max-width:110px}.grid>.empty:only-child{grid-column:1/-1}@media(max-width:700px){#products{gap:12px}#products .inside{padding:12px}#products h3{font-size:18px}#products .inside>button{padding:11px 8px;font-size:12px}}@media(max-width:559px){#products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:379px){#products{grid-template-columns:1fr}}
#products .card h3{min-height:2.3em;margin-bottom:8px}#products .product-description{min-height:3.2em;margin:0 0 12px}#products .combined{min-height:3.2em;margin:8px 0 12px}#products select,#products input{min-width:0}#products .product-quantity{margin-bottom:18px}.cart-line>div{min-width:0;overflow-wrap:anywhere}.cart-line input{flex-shrink:0}.cart-line button{flex-shrink:0}@media(max-width:700px){#products .inside{font-size:13px}#products .price{font-size:20px}#products .combined{font-size:12px}.cart-line{gap:8px}.cart-line>div{font-size:13px}}
#products .inside{padding:14px;gap:0}#products .card h3{min-height:0;margin:0 0 8px;font-size:20px}#products .product-prices{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;margin:0 0 10px;font-size:13px;line-height:1.4}#products .product-prices dt{font-weight:600}#products .product-prices dd{margin:0;text-align:right;font-weight:800;white-space:nowrap;font-size:16px}#products .price-combined{color:#1850cf}#products .product-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin:0 0 12px}#products .product-controls label{margin:0;min-width:0;font-size:12px}#products .product-controls input,#products .product-controls select{width:100%;max-width:none;margin:4px 0 0;padding:8px;height:40px}#products .inside>button{padding:10px 8px;font-size:13px}@media(max-width:700px){#products .inside{padding:10px}#products .card h3{font-size:17px}#products .product-prices{font-size:11px;gap:4px}#products .product-prices dd{font-size:14px}#products .product-controls{gap:6px}}
.section-heading>.catalog-info{max-width:390px;font-size:13px}.catalog-info>p{margin:0 0 12px}.catalog-info #pickup{white-space:pre-line;font-size:12px;line-height:1.6;margin-bottom:18px}
#catalogo>.section-heading{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}#catalogo>.section-heading h2{margin:18px 0 8px}#catalogo>.section-heading>.catalog-info{max-width:720px;width:100%;text-align:center}#catalogo .catalog-info #pickup{margin-top:16px}
/* Detalles corporativos en los titulos de las secciones publicas. */
#catalogo .section-heading h2,#ayudas>h2{position:relative;padding-bottom:16px}#catalogo .section-heading h2::after,#ayudas>h2::after{content:'';position:absolute;bottom:0;left:0;width:86px;height:5px;border-radius:8px;background:linear-gradient(90deg,#08a9e6 0%,#08a9e6 45%,#1850cf 45%,#1850cf 100%)}#catalogo .section-heading h2::after{left:50%;transform:translateX(-50%)}.opening-hours .eyebrow{display:flex;align-items:center;justify-content:center;gap:12px}.opening-hours .eyebrow::before,.opening-hours .eyebrow::after{content:'';width:34px;height:3px;border-radius:4px;background:#08a9e6}.opening-hours .eyebrow::after{background:#1850cf}
.phone-field{display:flex;align-items:center;gap:10px;margin-top:5px}.phone-field>span{background:#e7f5fd;padding:11px 14px;border-radius:7px;font-weight:800}.phone-field>input{margin-top:0;flex:1;min-width:0}
#privacy-copy{white-space:pre-line}#checkout-privacy{color:#1850cf;background:transparent;font-weight:700;padding:0}
.active-campaign{margin:28px 0 0;border:1px solid #d4e6f5;border-top:5px solid #08a9e6;border-radius:12px;overflow:hidden;background:#fff;text-align:center}.active-campaign>.eyebrow{margin:18px 12px}.active-campaign>img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;background:#f3f8fc}.campaign-copy{padding:18px 26px}.campaign-copy h2{font-size:28px;margin:0 0 12px}.campaign-copy p{white-space:pre-line;margin:0;line-height:1.7;overflow-wrap:anywhere}.campaign-admin-preview{display:block;max-width:100%;width:480px;max-height:360px;object-fit:contain;margin:15px 0;background:#f3f8fc;border-radius:8px}@media(max-width:559px){.campaign-copy{padding:16px}.campaign-copy h2{font-size:23px}}
#ayudas{text-align:center}#ayudas>h2::after{left:50%;transform:translateX(-50%)}.labor-intro{max-width:820px;margin:0 auto 28px;font-size:15px;line-height:1.8;color:#46596c}#ayudas .card{text-align:left}
#posts{display:flex;flex-direction:column;gap:30px;max-width:960px;margin:0 auto}#posts .post-card{width:100%;text-align:left;border-top:4px solid #08a9e6}#posts .post-title{padding:22px 26px;margin:0;font-size:clamp(22px,3vw,30px);line-height:1.25;overflow-wrap:anywhere}#posts .post-photo{display:block;width:100%;height:auto;max-height:680px;aspect-ratio:auto;object-fit:contain;background:#f3f8fc}#posts .post-description{white-space:pre-line;overflow-wrap:anywhere;margin:0;padding:24px 26px;font-size:15px;line-height:1.8}#posts .post-thumbnails{display:flex;gap:10px;overflow:auto;padding:14px 20px 0}#posts .post-thumbnails button{padding:3px;background:#fff;border:2px solid transparent;flex:0 0 auto;border-radius:6px}#posts .post-thumbnails button[aria-pressed=true]{border-color:#1850cf}#posts .post-thumbnails img{display:block;width:96px;height:72px;object-fit:cover;border-radius:3px}@media(max-width:559px){#posts .post-title{padding:18px}#posts .post-description{padding:18px;font-size:14px}}
.catalog-order-list{list-style:none;padding:0;margin:18px 0;display:grid;gap:10px}.catalog-order-row{display:flex;align-items:center;gap:12px;border:1px solid #dce6ef;border-radius:9px;padding:12px;background:#f9fbfd}.catalog-order-row img{width:52px;height:52px;object-fit:contain;background:#fff;border-radius:5px}.catalog-order-name{flex:1;min-width:0;overflow-wrap:anywhere;font-weight:800;font-size:14px}.catalog-order-row button{font-size:12px;padding:9px 12px;white-space:nowrap}.catalog-order-actions{display:flex;gap:10px;flex-wrap:wrap}.catalog-order-actions button+button{background:#e7f0fa;color:#1850cf}@media(max-width:650px){.catalog-order-row{flex-wrap:wrap}.catalog-order-name{flex-basis:calc(100% - 70px)}.catalog-order-row button{flex:1}}
