:root{color-scheme:light;--ink:#211c1b;--muted:#645b57;--brand:#a52625;--deep:#721c1d;--paper:#faf8f5;--line:#e8dfd7;--white:#fff;--radius:20px}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 "Instrument Sans",Arial,sans-serif}
a{color:inherit;text-underline-offset:.2em}
a:focus-visible{outline:3px solid #b43b27;outline-offset:4px}
img{display:block;max-width:100%}
h1,h2,h3,p{margin:0}
h1,h2,h3{line-height:1.12;letter-spacing:-.035em}
h1{font-size:clamp(2.25rem,5vw,4rem)}
h2{font-size:clamp(1.65rem,3.5vw,2.5rem)}
h3{font-size:1.18rem}
p{color:var(--muted)}
.wrap{width:min(calc(100% - 48px),1200px);margin-inline:auto}
.skip{position:absolute;top:-8rem;left:1rem;z-index:5;background:white;padding:1rem}
.skip:focus{top:1rem}
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.header-row{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:78px}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-weight:800;line-height:1.1;white-space:nowrap;letter-spacing:-.04em;font-size:1.13rem}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;background:var(--brand);border-radius:12px;color:white;letter-spacing:.03em;font-size:.78rem}
.site-nav{display:flex;gap:4px;align-items:center}
.site-nav a{padding:12px 14px;text-decoration:none;color:var(--muted);font-weight:700;border-radius:10px;white-space:nowrap;font-size:.91rem}
.site-nav a:hover,.site-nav a[aria-current]{background:#f8eded;color:var(--deep)}
.header-phone{font-size:.9rem;font-weight:800;color:var(--deep);white-space:nowrap;text-decoration:none}
.hero{display:grid;grid-template-columns:.9fr 1.1fr;min-height:470px;overflow:hidden;border-radius:26px;background:#f1e6d9;margin-block:26px 0}
.hero-copy{padding:clamp(28px,5vw,66px);align-self:center}
.hero-copy p{margin-top:16px;max-width:36ch}
.hero .eyebrow{margin:0 0 12px}
.eyebrow{font-weight:800;color:var(--deep);font-size:.8rem;letter-spacing:.075em;text-transform:uppercase}
.hero-media{position:relative;min-height:220px;background:#e8ded4}
.hero-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.hero-media .badge{position:absolute;right:18px;bottom:18px;padding:8px 14px;background:#fff;color:var(--deep);border-radius:24px;font-size:.83rem;font-weight:800;box-shadow:0 4px 20px #251b1526}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:26px}
.button{min-height:46px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;text-decoration:none;font-weight:750;background:var(--brand);color:white}
.button:hover{background:var(--deep)}
.button.secondary{color:var(--deep);background:#fff;border:1px solid var(--line)}
.button.secondary:hover{background:#faeded}
.service-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--line);border-radius:16px;margin-top:18px}
.service-strip div{padding:14px 20px}
.service-strip div+div{border-left:1px solid var(--line)}
.service-strip strong,.service-strip span{display:block}
.service-strip span{font-size:.88rem;color:var(--muted)}
.catalog-section{margin-block:48px 64px;scroll-margin-top:20px}
.section-head{margin-bottom:20px}
.section-head p,.page-title p{margin-top:8px;max-width:70ch}
.grid,.services-content .cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.tile,.services-content .card,.services-content .local-product{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;transition:border-color .18s,box-shadow .18s}
.tile:hover,.services-content .card:hover,.services-content .local-product:hover{border-color:#b77d6f;box-shadow:0 8px 24px #35251d13}
.tile-media{display:grid;place-content:center;aspect-ratio:5/4;background:#f0ebe5;overflow:hidden}
.tile-media img{width:100%;height:100%;object-fit:contain}
.tile-media:has(img){display:block}
.tile .cover{object-fit:cover}
.tile-body{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:15px}
.tile-body strong{line-height:1.2}
.tile-body small{display:block;color:var(--muted);margin-top:5px}
.arrow{color:var(--deep);font-size:1.2rem;flex:none}
.page-title{margin-block:28px 24px;padding:28px;background:#f1e6d9;border-radius:var(--radius)}
.crumb{font-size:.87rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.crumb a:hover{color:var(--deep)}
.detail,.info-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:22px;margin-bottom:44px}
.panel,.detail>div,.detail>section,.variant{padding:clamp(16px,3vw,28px);border:1px solid var(--line);border-radius:var(--radius);background:white;min-width:0}
.panel h2,.detail h2{font-size:1.52rem;margin-bottom:12px}
.panel p+p,.detail p+p{margin-top:10px}
.detail img,.panel img{width:100%;max-height:460px;object-fit:contain;border-radius:12px}
.detail img+p{margin-top:8px}
.detail table{width:100%;border-collapse:collapse;margin-top:12px}
.detail th,.detail td{text-align:left;padding:7px 5px;border-bottom:1px solid var(--line)}
.detail th{font-weight:700}
.variant img{width:100%;height:230px;object-fit:contain;margin-bottom:10px}
.variant strong{display:block;text-align:center}
.notice{margin:14px 0 20px;color:var(--muted)}
.info-layout a,.services-content a{overflow-wrap:anywhere}
.info-layout dl{margin:0}
.info-layout dt{font-weight:800;margin-top:12px}
.info-layout dd{margin:2px 0 12px;color:var(--muted)}
.services-content{margin-block:24px 54px}
.services-content section{margin-bottom:30px}
.services-content .hero{display:block;min-height:auto;padding:28px}
.services-content h2{margin-bottom:14px}
.services-content .cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.services-content .card img{height:160px;width:100%;object-fit:contain;background:#f0ebe5}
.services-content .card div,.services-content .local-product{padding:15px}
.services-content .links{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}
.services-content .links a{display:block;padding:8px 12px;border-radius:10px;background:white;border:1px solid var(--line)}
.site-footer{background:#271f1e;color:#fff;margin-top:42px;padding:36px 0 90px}
.footer-row{display:flex;align-items:start;justify-content:space-between;gap:24px}
.site-footer p{color:#e6d7d0;margin-top:5px}
.site-footer a{color:#fff}
.contact-dock{position:fixed;z-index:4;inset:auto 20px 18px;display:flex;justify-content:space-between;pointer-events:none}
.contact-dock a{pointer-events:auto;display:flex;justify-content:center;align-items:center;gap:9px;text-decoration:none;font-weight:800;border-radius:10px;min-height:48px;padding:9px 22px;color:white;box-shadow:0 4px 18px #1a100f26;background:var(--deep)}
.contact-dock a:hover{filter:brightness(.9)}
.contact-dock .whatsapp{background:#087d41}
.whatsapp img{width:23px;height:23px;border-radius:50%}
@media(max-width:960px){.header-phone{display:none}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{min-height:390px}}
@media(max-width:680px){
 .wrap{width:calc(100% - 28px)}.header-row{display:block;padding-top:12px}.site-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;margin:8px 0}.site-nav a{text-align:center;padding:9px 2px;font-size:clamp(.7rem,3.15vw,.86rem)}.brand-mark{width:34px;height:34px}
 .hero{display:flex;flex-direction:column;margin-top:14px;min-height:auto}.hero-copy{padding:24px;align-self:auto}.hero-media{aspect-ratio:2/1;min-height:0}.hero-media .badge{right:10px;bottom:10px}.hero-copy p{margin-top:10px}
 .service-strip{grid-template-columns:1fr}.service-strip div{padding:8px 12px}.service-strip div+div{border-left:0;border-top:1px solid var(--line)}
 .grid,.services-content .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tile-body{padding:10px;font-size:.9rem}.page-title{padding:16px;margin-top:16px}.detail,.info-layout{grid-template-columns:1fr}.catalog-section{margin-block:30px 40px}.variant img{height:155px}.footer-row{display:block}.footer-row>div+div{margin-top:15px}
 .contact-dock{inset:auto 0 0;display:grid;grid-template-columns:1fr 1fr}.contact-dock a{border-radius:0;padding-bottom:calc(9px + env(safe-area-inset-bottom));box-shadow:none}.contact-dock .whatsapp{border-left:1px solid #ffffff70}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.button{gap:.35em}
.size-grid .tile-body{min-height:60px}
.archive-gallery .variant{padding:10px}
.archive-gallery img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;margin:0}

.price-status{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
.price-index{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 30px}
.price-index a{padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--deep);font-weight:700;text-decoration:none}
.price-index a:hover{background:#f8eded}
.price-section{margin:34px 0;scroll-margin-top:16px}
.price-section>p{margin:8px 0 16px}
.price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.price-table{min-width:0;overflow-x:auto;background:white;border:1px solid var(--line);border-radius:14px;padding:14px}
.price-table h3{margin:0 0 10px}
.price-table table{width:100%;border-collapse:collapse;font-size:.9rem;text-align:left}
.price-table td,.price-table th{padding:8px 6px;border-bottom:1px solid var(--line)}
.price-table thead{background:#f1e6d9}
.price-table tbody tr:nth-child(even){background:#faf8f5}
.price-table td{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.price-table th:last-child{text-align:right}
.product-copy{margin-top:20px}
.product-copy h3{margin:14px 0 6px}
.product-summary{margin-bottom:18px}
.product-summary .product-copy{margin-top:0}
@media(max-width:780px){
 .header-row{display:block;padding-top:12px}
 .site-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;margin:8px 0}
 .site-nav a{display:grid;place-items:center;text-align:center;white-space:normal;padding:8px 2px;line-height:1.15;font-size:clamp(.69rem,2.8vw,.93rem);min-height:42px}
 .price-grid{grid-template-columns:1fr}
}

.service-product-grid {
    margin-top: 16px;
}

.service-product-grid .tile-media {
    aspect-ratio: 1;
}

.service-list {
    padding-inline-start: 1.4rem;
}

.service-list li + li {
    margin-top: .55rem;
}

.services-content details {
    margin-block: 1rem;
}

.services-content summary {
    cursor: pointer;
    font-weight: 700;
}
