*{box-sizing:border-box;margin:0;padding:0} :root{--ink:#191b18;--muted:#73766e;--cream:#f2f1eb;--paper:#fbfaf7;--olive:#777b68;--line:#e4e3dc}html{scroll-behavior:smooth}body{font-family:'DM Sans',sans-serif;background:var(--paper);color:var(--ink);line-height:1.6}a{color:inherit;text-decoration:none}.topbar{height:84px;padding:0 7%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fbfaf7f5;z-index:5}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;border:1px solid;font:20px 'Playfair Display';display:grid;place-items:center;letter-spacing:-2px}.brand-name{font-size:12px;letter-spacing:2px;line-height:1.2}.brand-name small{display:block;font-size:9px;color:var(--muted);letter-spacing:1px;margin-top:5px}nav{display:flex;gap:32px;font-size:12px;color:#555}.header-cta,.text-link{font-size:11px;border-bottom:1px solid;padding:8px 0}.menu-toggle{display:none}.hero{padding:75px 7%;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;min-height:590px}.eyebrow{font-size:9px;letter-spacing:2px;color:var(--olive);font-weight:700}h1,h2{font:500 clamp(40px,5vw,68px)/1.08 'Playfair Display';letter-spacing:-1.5px;margin:22px 0}h1 em,h2 em{color:var(--olive)}.hero-text,.section-head>p,.body-copy{font-size:13px;line-height:1.9;color:var(--muted);max-width:450px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.button{display:inline-flex;padding:15px 20px;font-size:11px;gap:25px}.dark{background:var(--ink);color:white}.light{background:var(--paper);color:var(--ink)}.hero-note{font-size:10px;color:var(--muted);margin-top:50px}.hero-visual{height:450px;position:relative;background:#e7e6df;overflow:hidden}.hero-visual img,
.quality-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}.placeholder{display:none;position:absolute;inset:0;place-content:center;text-align:center;background:linear-gradient(140deg,#e9e8e1,#d9dad1);color:var(--olive)}.placeholder b{font:70px 'Playfair Display'}.placeholder small{font-size:9px;letter-spacing:2px}.placeholder span{font-size:10px;color:#777}.visual-caption{position:absolute;bottom:0;left:0;right:0;background:#fbfaf7ed;padding:15px 20px;font:16px 'Playfair Display'}.trust{background:var(--cream);padding:25px 7%;display:grid;grid-template-columns:repeat(4,1fr);gap:15px;font-size:10px;color:#5e6159}.trust div{border-right:1px solid #ddd;padding-right:8px}.trust div:last-child{border:0}.trust b{font:22px 'Playfair Display';color:var(--olive);margin-right:8px}.section{padding:95px 7%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px}.section-head h2{font-size:50px}.section-head>p{max-width:340px}.filters{display:flex;gap:9px;margin:38px 0 24px;flex-wrap:wrap}.filter{padding:10px 15px;border:1px solid var(--line);background:none;font:10px 'DM Sans';color:var(--muted);cursor:pointer}.filter.active,.filter:hover{background:var(--ink);color:white}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 20px}.product-photo {
    aspect-ratio: 3 / 4;
    background: #eeede7;
    position: relative;
    overflow: hidden;
}.product-photo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    transition: transform 0.4s ease;
}.product-card:hover img {
    transform: scale(1.02);
}.product-placeholder{display:none;position:absolute;inset:0;place-content:center;text-align:center;background:linear-gradient(140deg,#eeede7,#d9dad1);color:var(--olive)}.product-placeholder b{font:44px 'Playfair Display'}.product-placeholder small{font-size:8px;letter-spacing:1.5px}.product-info{padding-top:15px}.product-top{display:flex;justify-content:space-between;gap:10px}.product-category{font-size:8px;letter-spacing:1px;color:var(--olive);text-transform:uppercase;margin-bottom:5px}.product-info h3{font:19px 'Playfair Display';line-height:1.3}.product-price{font-size:11px;white-space:nowrap}.product-meta,.note{font-size:10px;color:var(--muted);line-height:1.8;margin-top:10px}.product-cta{display:inline-block;font-size:10px;border-bottom:1px solid;margin-top:12px;padding-bottom:4px}.note{margin-top:25px}.quality{background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.quality-image{height:470px;position:relative;background:#e6e5dd;overflow:hidden}.body-copy{margin:20px 0}.points{margin-top:25px}.points>div{display:flex;gap:18px;border-top:1px solid #ddd;padding:16px 0}.points>div>b{font-size:10px;color:var(--olive)}.points strong{font:17px 'Playfair Display'}.points p{font-size:10px;color:var(--muted)}.contact-band{padding:65px 7%;background:#20231f;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px}.contact-band .eyebrow{color:#b5b9a8}.contact-band h2{font-size:48px}.contact-band h2 em{color:#b5b9a8}footer{padding:50px 7% 20px}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;padding-bottom:40px}.footer-main>p{font:18px/1.5 'Playfair Display';color:#555}.footer-contact{display:flex;flex-direction:column;gap:9px;font-size:11px}.footer-contact small{font-size:8px;letter-spacing:2px;color:var(--olive)}.footer-bottom{border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}@media(max-width:800px){.hero,.section{padding-left:5%;padding-right:5%}.hero{gap:4%}.hero-visual{height:390px}.product-photo{aspect-ratio:3 / 4}.trust{padding-left:5%;padding-right:5%}}@media(max-width:640px){.topbar{height:70px;padding:0 5%}.menu-toggle{display:block;border:0;background:none;font-size:23px;margin-left:auto;margin-right:15px}nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:20px 6%;flex-direction:column;gap:17px;border-bottom:1px solid var(--line)}nav.open{display:flex}.header-cta{font-size:10px}.hero{grid-template-columns:1fr;padding-top:48px;gap:30px}.hero-visual{height:360px}.hero-note{margin-top:30px}.trust{grid-template-columns:1fr 1fr;row-gap:15px}.trust div:nth-child(2){border:0}.section{padding-top:65px;padding-bottom:65px}.section-head{display:block}.section-head>p{margin-top:18px}.section-head h2{font-size:43px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 12px}.product-photo{aspect-ratio:3 / 4}.product-top{display:block}.product-price{display:block;margin-top:6px}.product-info h3{font-size:17px}.quality{grid-template-columns:1fr;gap:30px}.quality-image{height:340px}.contact-band{display:block;padding:50px 5%}.contact-band h2{font-size:42px}.contact-band .button{margin-top:25px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>p,.footer-contact{grid-column:1/-1}.footer-bottom{gap:12px;flex-wrap:wrap}}@media(max-width:380px){.product-grid{grid-template-columns:1fr}.product-photo{aspect-ratio:3 / 4}.header-cta{display:none}}

/* CARRINHO DE ORÇAMENTO */
.cart-open {
 border: 0;
 background: var(--ink);
 color: white;
 padding: 11px 15px;
 cursor: pointer;
 font-family: 'DM Sans', sans-serif;
}
.cart-open span {
 display: inline-grid;
 place-items: center;
 min-width: 20px;
 height: 20px;
 margin-left: 6px;
 padding: 0 5px;
 border-radius: 50px;
 background: white;
 color: var(--ink);
 font-size: 10px;
}
.quote-controls {
 display: grid;
 grid-template-columns: 90px 1fr;
 gap: 10px;
 margin-top: 14px;
}
.quote-controls label,
.cart-footer label {
 display: flex;
 flex-direction: column;
 gap: 5px;
 color: var(--muted);
 font-size: 9px;
}
.quote-controls input,
.cart-item-actions input,
.cart-footer textarea {
 width: 100%;
 border: 1px solid var(--line);
 border-radius: 0;
 padding: 10px;
 background: white;
 color: var(--ink);
 font: 11px 'DM Sans', sans-serif;
 min-width: 0;
}
.quote-controls .add-to-cart {
 grid-column: 1 / -1;
 width: fit-content;
 background: none;
 border: 0;
 border-bottom: 1px solid var(--ink);
 cursor: pointer;
 font: 600 10px 'DM Sans', sans-serif;
 padding: 7px 0;
}
.cart-overlay {
 display: none;
 position: fixed;
 inset: 0;
 z-index: 20;
 background: #15171399;
 justify-content: flex-end;
}
.cart-overlay.visible { display: flex; }
.cart-panel {
 width: min(520px, 100%);
 height: 100%;
 overflow-y: auto;
 background: var(--paper);
 padding: 30px;
 box-shadow: -10px 0 35px #0002;
}
.cart-heading {
 display: flex;
 justify-content: space-between;
 align-items: flex-start;
}
.cart-heading h2 {
 font-size: 38px;
 margin: 8px 0 15px;
}
.cart-close {
 border: 0;
 background: none;
 font-size: 32px;
 cursor: pointer;
 line-height: 1;
}
.cart-intro {
 color: var(--muted);
 font-size: 11px;
 line-height: 1.8;
 margin-bottom: 25px;
}
.cart-empty {
 padding: 25px 0;
 color: var(--muted);
 font-size: 12px;
}
.cart-item {
 display: flex;
 justify-content: space-between;
 gap: 15px;
 padding: 17px 0;
 border-top: 1px solid var(--line);
}
.cart-item-details {
 display: flex;
 flex-direction: column;
 gap: 5px;
}
.cart-item-details strong { font: 17px 'Playfair Display'; }
.cart-item-details small { color: var(--muted); font-size: 10px; }
.cart-item-actions {
 display: flex;
 flex-direction: column;
 align-items: flex-end;
 gap: 8px;
 min-width: 75px;
}
.cart-item-actions input { width: 70px; }
.cart-remove,.cart-clear {
 border: 0;
 background: none;
 color: var(--muted);
 text-decoration: underline;
 cursor: pointer;
 font: 10px 'DM Sans', sans-serif;
}
.cart-footer {
 border-top: 1px solid var(--line);
 margin-top: 15px;
 padding-top: 20px;
}
.cart-minimum {
 color: var(--olive);
 font-size: 10px;
 margin-bottom: 18px;
}
.cart-footer textarea {
 margin-top: 7px;
 resize: vertical;
}
.cart-send {
 width: 100%;
 justify-content: center;
 margin-top: 17px;
 border: 0;
 cursor: pointer;
}
.cart-clear {
 display: block;
 margin: 15px auto 0;
}
.cart-locked { overflow: hidden; }

@media(max-width:640px) {
 .cart-open { padding: 9px 10px; font-size: 9px; }
 .cart-panel { padding: 23px 18px; }
 .quote-controls { grid-template-columns: 75px 1fr; }
}


/* Ajustes finais do cabeçalho e do catálogo */
.topbar .cart-open {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    border-bottom: 0;
    color: #ffffff;
    background: var(--ink);
    font-size: 11px;
    line-height: 1;
    white-space: nowrap;
}

.topbar .cart-open:hover {
    opacity: 0.88;
}

.product-photo img {
    display: block;
}

@media (max-width: 640px) {
    .topbar .cart-open {
        font-size: 10px;
    }
}


/* Campos de identificação do cliente no orçamento */
.cart-footer .customer-field { display:block; width:100%; margin:7px 0 14px; border:1px solid var(--line); border-radius:0; padding:10px; background:#fff; color:var(--ink); font:11px 'DM Sans',sans-serif; }
.quote-feedback { margin-top:12px; font-size:11px; color:var(--olive); }
.quote-feedback.erro { color:#b42318; }
.admin-gear {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    color: #888;
    font-size: 20px;
    text-decoration: none;
    opacity: 0.55;
    transition: 0.3s ease;
    border-radius: 50%;
}

.admin-gear:hover,
.admin-gear:focus {
    color: #fff;
    opacity: 1;
    background: #222;
}