.slf-header,.slf-footer,.slf-contact,.slf-collection,.slf-announcement{font-family:'DM Sans',sans-serif;color:#161616;box-sizing:border-box}
.slf-header *,.slf-footer *,.slf-contact *,.slf-collection *{box-sizing:border-box;min-width:0}
.slf-header a,.slf-footer a,.slf-collection a{color:inherit;text-decoration:none}
.slf-announcement{background:#111;color:#fff;text-align:center;font-size:12px;padding:8px 16px}
.slf-announcement summary{cursor:pointer}.slf-announcement p{margin:8px auto;max-width:760px}
.slf-header{background:#fff;border-bottom:1px solid #ddd;position:relative;z-index:10;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:20px 32px}
.slf-logo{font-family:'Playfair Display',serif;font-size:30px;white-space:nowrap}
.slf-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;font-size:13px}
.slf-header-actions{display:flex;align-items:center;gap:16px}.slf-header-actions button,.slf-header-actions summary{background:none;border:0;font:inherit;cursor:pointer;font-size:13px}
.slf-mobile-menu{display:none}.slf-mobile-menu nav{display:flex;flex-direction:column;gap:16px;padding:20px;position:absolute;left:12px;right:12px;background:white;border:1px solid #ddd;box-shadow:0 6px 16px #0002;z-index:12}
.slf-search-panel{position:absolute;z-index:15;right:20px;top:100%;width:380px;max-width:calc(100vw - 24px);padding:20px;background:#fff;border:1px solid #ddd;box-shadow:0 6px 16px #0002}
.slf-search-panel input{width:100%;padding:12px;border:1px solid #777;margin:8px 0}.slf-search-panel ul{list-style:none;margin:12px 0;padding:0;max-height:260px;overflow:auto}.slf-search-panel li{padding:10px 0;border-bottom:1px solid #ddd}.slf-search-panel p{font-size:13px}
.slf-footer{padding:55px 32px 24px;background:#f4f4f4;margin-top:60px}
.slf-footer-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:36px}
.slf-footer h2{font-size:17px;margin:0 0 20px}.slf-footer nav a{display:block;font-size:14px;margin:12px 0}
.slf-footer p{font-size:14px;line-height:1.6}.slf-offer-note{font-size:12px!important;color:#555}
.slf-newsletter label{display:block;font-size:13px}.slf-newsletter-input{display:flex;gap:8px;margin-top:8px}.slf-newsletter input{padding:12px;width:100%;border:1px solid #777;background:white;min-width:0}
.slf-copyright{margin:40px auto 0;max-width:1180px;border-top:1px solid #ccc;padding-top:20px;font-size:12px!important}
.slf-contact{max-width:760px;margin:70px auto;padding:0 24px}.slf-contact h1{text-align:center;font-size:32px;line-height:1.2;margin:0 0 36px}.slf-eyebrow{text-align:center;font-size:14px;margin:0 0 15px}
.slf-contact label{display:block;font-size:13px;margin:14px 0 8px}.slf-contact input,.slf-contact textarea{width:100%;font:inherit;border:1px solid #999;padding:15px;background:white;border-radius:0}.slf-contact textarea{resize:vertical}.slf-form-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.slf-button{display:inline-block;cursor:pointer;background:#111;color:#fff!important;border:1px solid #111;padding:14px 22px;font:inherit;text-decoration:none;text-align:center;min-height:44px}
.slf-contact .slf-button{display:block;width:100%;margin-top:24px}
.slf-collection{max-width:1250px;margin:45px auto;padding:0 24px}.slf-collection h1{font-size:28px;text-align:center;margin:0 0 32px}
.slf-controls{display:flex;align-items:end;gap:22px;border-bottom:1px solid #ddd;padding:0 0 20px;flex-wrap:wrap}
.slf-controls fieldset{border:0;margin:0;padding:0;min-inline-size:0}.slf-controls legend{font-weight:bold;margin-bottom:14px}.slf-controls label{font-size:13px}.slf-controls input[type=checkbox]{accent-color:#111}
.slf-price-range{display:flex;gap:12px;margin-top:12px}.slf-price-range input{display:block;width:140px;padding:10px;border:1px solid #aaa}
.slf-controls select{display:block;border:1px solid #aaa;padding:12px;margin-top:8px;max-width:280px;font:inherit;font-size:13px;background:white}.slf-reset{background:none;border:0;text-decoration:underline;cursor:pointer;font:inherit;font-size:13px;min-height:44px}
.slf-catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.slf-card{font-size:14px;line-height:1.4}.slf-card h2{font-size:15px;margin:14px 0 8px}.slf-card p{margin:6px 0}.slf-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fafafa}.slf-card-unavailable{color:#555}.slf-card-unavailable p:last-child{font-size:12px}
.slf-swatches{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.slf-swatch{font-size:11px;display:flex;align-items:center;gap:4px;min-height:36px}.slf-swatch span{display:block;border:1px solid #999;border-radius:50%;width:18px;height:18px;background:#ddd}.slf-swatch[data-color=negro] span{background:#111}.slf-swatch[data-color=blanco] span{background:#fff}.slf-swatch[data-color=gris] span{background:#888}
.slf-empty{text-align:center;padding:70px 12px}.slf-empty p{margin-bottom:26px}
.slf-header [hidden],.slf-collection [hidden]{display:none!important}
.slf-header :focus-visible,.slf-footer :focus-visible,.slf-collection :focus-visible,.slf-contact :focus-visible{outline:2px solid #245ce0;outline-offset:3px}
@media(max-width:950px){.slf-header{padding:16px 20px;grid-template-columns:1fr auto}.slf-nav{display:none}.slf-mobile-menu{display:block}.slf-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.slf-footer-grid{grid-template-columns:1fr 1fr}.slf-newsletter{grid-column:1/-1}}
@media(max-width:600px){.slf-header{gap:12px;padding:16px 12px}.slf-logo{font-size:24px}.slf-header-actions{gap:12px}.slf-footer{padding:35px 20px 20px}.slf-footer-grid{grid-template-columns:1fr 1fr;gap:22px}.slf-contact{margin:45px auto;padding:0 20px}.slf-contact h1{font-size:28px}.slf-form-pair{grid-template-columns:1fr;gap:0}.slf-collection{padding:0 16px;margin:32px auto}.slf-controls{gap:16px}.slf-controls fieldset{width:100%}.slf-price-range label{flex:1}.slf-price-range input{width:100%}.slf-controls>div{width:100%}.slf-controls select{max-width:none;width:100%}.slf-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.slf-newsletter-input{flex-direction:column}.slf-button{max-width:100%}.slf-empty{padding:40px 0}}
