@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--green:#203c31;--gold:#caaa73;--ink:#202924;--muted:#6a7069;--paper:#faf9f6;--line:#dddeda}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:3px solid #b08b46;outline-offset:4px}.topbar{background:var(--green);color:white;padding:11px 5%;font-size:12px;letter-spacing:1.6px;display:flex;justify-content:space-between}.topbar span{letter-spacing:.3px}header{display:flex;align-items:center;justify-content:space-between;padding:26px 5%;border-bottom:1px solid var(--line);gap:20px}.logo{font-family:Georgia,serif;font-size:35px;letter-spacing:5px;line-height:1}.logo span{display:block;font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:2px;margin-top:10px}nav{display:flex;gap:32px;font-size:14px}nav a:hover{color:#967337}.quote-open{border:1px solid var(--green);border-radius:4px;padding:12px 18px;background:transparent;font-size:14px}.quote-open span{display:inline-grid;place-items:center;background:var(--green);color:white;border-radius:50%;min-width:23px;height:23px;margin-left:12px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:55px 5% 65px;align-items:center}.eyebrow{letter-spacing:2px;font-size:12px;font-weight:600;margin:0 0 24px}h1{font:normal clamp(48px,5.1vw,79px)/1.08 Georgia,serif;letter-spacing:-2px;margin:0 0 24px}h1 em{color:var(--green);font-weight:normal}.lead{color:var(--muted);line-height:1.8;max-width:460px;margin-bottom:28px}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 23px;background:var(--green);color:white;border:0;border-radius:3px;font-size:14px}.primary:hover{background:#345943}.hero-foot{display:flex;gap:32px;font-size:11px;letter-spacing:1.3px;margin-top:55px;color:var(--muted)}.hero-image{position:relative;height:440px;border-radius:120px 3px 3px 3px;overflow:hidden;background:#ddd6cb}.hero-image img{width:100%;height:100%;object-fit:cover}.image-caption{position:absolute;bottom:0;left:0;width:100%;padding:38px 24px 22px;background:linear-gradient(transparent,#0009);color:white;display:flex;justify-content:space-between;align-items:end;gap:12px}.image-caption span{font:24px Georgia,serif}.image-caption small{font-size:12px;white-space:nowrap}.catalog{padding:50px 5% 70px;background:white;border-top:1px solid var(--line)}.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-title .eyebrow{margin-bottom:16px}h2{font:normal clamp(32px,3vw,45px)/1.15 Georgia,serif;margin:0}.section-title>p{color:var(--muted);font-size:14px}.sample-note{padding:13px 16px;background:#f3f0e8;border-left:2px solid var(--gold);font-size:13px;line-height:1.6;margin:28px 0 24px;color:#665b44}.sample-note span{font-size:10px;letter-spacing:1px;font-weight:700;margin-right:12px}.catalog-tools{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:15px}.filters{display:flex;gap:8px}.filters button{border:1px solid var(--line);background:white;border-radius:30px;padding:10px 20px;font-size:14px}.filters .active{background:var(--green);color:white;border-color:var(--green)}#result-count{color:var(--muted);font-size:13px}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.product-image{position:relative;overflow:hidden;background:#f0efeb;aspect-ratio:4/5;border-radius:4px;width:100%;border:0;padding:0}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.product-image:hover img{transform:scale(1.04)}.product-image span{position:absolute;left:13px;top:13px;background:#fffffff0;padding:6px 9px;letter-spacing:1px;font-size:10px}.product .meta{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:18px}.product h3{font:24px Georgia,serif;margin:9px 0}.product p{font-size:14px;color:var(--muted);margin:0 0 18px;line-height:1.6}.product-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:15px;gap:8px}.product-bottom span{font-size:13px}.add{border:1px solid var(--line);border-radius:3px;background:white;padding:9px 12px;font-size:13px}.add:hover{background:var(--green);color:white}.steps{background:var(--green);color:white;padding:58px 5%;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:45px}.steps .eyebrow{color:var(--gold)}.steps h2{font-size:35px}.steps article>span{color:var(--gold);font:32px Georgia,serif}.steps h3{font-size:17px;font-weight:500;margin-top:22px}.steps p{font-size:14px;line-height:1.8;color:#d3ddd6}footer{padding:45px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer>div{display:flex;flex-direction:column;gap:12px;font-size:14px}footer p{font-size:14px;line-height:1.9;color:var(--muted)}dialog{border:0;color:var(--ink);padding:35px;background:var(--paper);max-height:95dvh;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#09150fab;backdrop-filter:blur(3px)}#quote{margin:0 0 0 auto;height:100dvh;max-height:100dvh;width:min(100%,480px)}.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:15px}.drawer-header .eyebrow{margin-bottom:10px}.close{border:1px solid var(--line);width:38px;height:38px;background:transparent;border-radius:50%;font-size:25px;flex-shrink:0}.drawer-intro{color:var(--muted);font-size:14px;line-height:1.6;margin:22px 0 30px}.quote-row{display:grid;grid-template-columns:70px 1fr;gap:17px;padding:20px 0;border-bottom:1px solid var(--line)}.quote-row img{width:70px;height:95px;object-fit:cover;border-radius:3px}.quote-row h3{margin:0 0 10px;font-size:16px;font-weight:500}.quantity{display:flex;align-items:center;gap:6px}.quantity button{width:30px;height:30px;border:1px solid var(--line);background:white}.quantity input{width:48px;height:30px;text-align:center;border:1px solid var(--line);font:14px inherit}.quantity .remove{font-size:12px;width:auto;margin-left:auto;border:0;background:transparent;text-decoration:underline;color:var(--muted)}label{display:block;font-size:14px;margin:25px 0 10px}label span{color:var(--muted)}textarea{width:100%;min-height:105px;font:14px/1.6 'DM Sans',sans-serif;resize:vertical;padding:12px;border:1px solid var(--line);border-radius:3px;background:white}.total{display:flex;justify-content:space-between;padding:23px 0 6px;font-size:14px;gap:10px}.quote-note{font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:22px}#send{width:100%;justify-content:center}.copy{display:block;background:transparent;border:0;text-decoration:underline;margin:18px auto 0;font-size:14px}#copy-status{font-size:13px;text-align:center}.empty{text-align:center;padding:70px 5px;color:var(--muted);line-height:1.8}#details{width:min(850px,94%);border-radius:6px}#details>.close{position:absolute;right:15px;top:15px;background:white;z-index:1}#detail-content{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}#detail-content img{width:100%;height:390px;object-fit:cover;border-radius:3px}#detail-content p{line-height:1.7;color:var(--muted);font-size:14px}#detail-content .eyebrow{font-size:11px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--green);color:white;padding:14px 25px;border-radius:5px;opacity:0;pointer-events:none;transition:opacity .2s;z-index:5;max-width:90%;font-size:14px}#toast.show{opacity:1}@media(min-width:1500px){main,header{max-width:1600px;margin:auto}}@media(max-width:1000px){nav{gap:18px}.products{grid-template-columns:repeat(2,1fr)}.intro{gap:5%}.hero-image{height:400px}.steps{grid-template-columns:1fr 1fr;gap:35px}.hero-foot{gap:15px;font-size:10px}}@media(max-width:650px){.topbar{justify-content:center;font-size:10px}.topbar span{display:none}header{padding:22px 5%;flex-wrap:wrap}.logo{font-size:29px}nav{order:3;width:100%;justify-content:space-between;padding-top:15px;font-size:13px}.quote-open{padding:10px 12px}.intro{grid-template-columns:1fr;padding-top:35px;gap:30px}h1{font-size:54px}.lead{font-size:15px}.hero-foot{margin-top:30px}.hero-image{height:330px;border-top-left-radius:90px}.section-title{display:block}.section-title>p{line-height:1.6}.catalog{padding-top:35px}.catalog-tools{align-items:start;flex-direction:column}.filters button{padding:10px 17px}.products{gap:25px 14px}.product h3{font-size:21px}.product-bottom{align-items:start;flex-direction:column}.product-bottom .add{width:100%}.product p{font-size:13px}.steps{grid-template-columns:1fr;gap:26px}.steps article{border-top:1px solid #ffffff26;padding-top:20px}.steps h3{margin:12px 0}.steps p{margin-bottom:0}footer{flex-wrap:wrap}footer>.logo{width:100%;margin-bottom:10px}dialog{padding:25px}#detail-content{grid-template-columns:1fr;gap:20px}#detail-content img{height:230px}#detail-content h2{font-size:30px}.image-caption span{font-size:22px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

#quote-form>input{display:block;width:100%;padding:12px;border:1px solid #ccc;border-radius:6px;margin:8px 0 18px}#quote-form>input[hidden]{display:none}.add:disabled{opacity:.5}#request-status{padding:12px;color:#234b37}
.hero-image video{width:100%;height:100%;object-fit:cover}.hero-image:has(video) .image-caption{bottom:54px;pointer-events:none}

/* Catalog prices shown before requesting a revised offer. */
.quote-summary{margin:22px 0 8px;padding:18px;border:1px solid var(--gold);border-radius:4px;background:white}.quote-summary[hidden],.quote-missing[hidden]{display:none}.quote-units{margin:0 0 12px;font-size:14px;color:var(--muted)}.quote-summary .total{padding:0;flex-wrap:wrap;align-items:baseline;font-size:16px}.quote-summary .total strong{font-size:24px;color:var(--green);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.quote-total-note,.quote-missing{font-size:14px;line-height:1.6;margin:12px 0 0}.quote-total-note{color:var(--muted)}.quote-missing{font-weight:500}.quote-unit-price,.quote-line-value{font-size:14px;line-height:1.5;margin:0 0 8px;overflow-wrap:anywhere}.quote-unit-price{color:var(--muted)}.quote-line-value strong{font-variant-numeric:tabular-nums}
/* Quantity selection and the saved quote flow. */
.quantity-picker{margin:14px 0}.quantity-picker label{font-size:14px;margin:0 0 8px}.quantity{gap:4px;flex-wrap:wrap}.quantity button{width:38px;height:42px;flex-shrink:0}.quantity input{width:64px;height:42px;font-family:inherit;font-size:16px;appearance:textfield;-moz-appearance:textfield;padding:4px}.quantity input::-webkit-inner-spin-button,.quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity input:invalid{border-color:#ad3939}.quantity .remove{font-size:14px;min-height:42px}.quantity button:disabled{opacity:.4;cursor:default}.product>.add{width:100%;min-height:44px;font-size:14px}.product .selected-count{min-height:22px;margin:8px 0 0;font-size:14px;color:var(--green)}.draft-status,.whatsapp-help{font-size:14px;line-height:1.6;color:var(--muted)}.draft-status{padding:12px;border-left:2px solid var(--gold);background:#ffffff80}.quote-placeholder{width:70px;height:95px;display:grid;place-items:center;background:#e8e9e4;font:12px Georgia,serif}.quote-row>div{min-width:0}.quote-row h3{overflow-wrap:anywhere}#quote-form>input,#notes{font-family:inherit;font-size:16px}#submit-request{width:100%;justify-content:center;font-size:16px;gap:12px}#request-status:empty{display:none}#send[hidden],#draft-status[hidden]{display:none}#quote button:disabled{cursor:wait}#quote .quantity button:disabled{cursor:default}#detail-content .quantity-picker{margin-bottom:20px}@media(max-width:380px){#quote{padding:18px}.quote-row{grid-template-columns:54px 1fr;gap:10px}.quote-row img,.quote-placeholder{width:54px;height:78px}.quantity input{width:56px}.quantity button{width:34px}}

.weekly-offers{padding:50px 5% 65px;background:#edf2ed;border-top:1px solid var(--line)}
.weekly-offers[hidden],#offers-nav[hidden]{display:none!important}
.promotion-preview-empty{grid-column:1/-1;padding:28px;border:1px dashed var(--green);background:#fff}.promotion-preview-empty strong{font-size:20px}.promotion-preview-empty p{font-size:16px;line-height:1.6;max-width:720px}
.weekly-offers .product{background:#fff;border:1px solid #d4ded5;padding-bottom:22px}
.weekly-offers .product>h3,.weekly-offers .product>p,.weekly-offers .promotion-label{margin-left:20px;margin-right:20px}
.weekly-offers .add{width:calc(100% - 40px);margin:12px 20px 0}
.promotion-label{display:block;margin-top:20px;color:#6c5536;font-size:14px;letter-spacing:1.5px;font-weight:600}
.product .promotion-price,.product .public-price{font-size:22px;color:var(--green);font-weight:600;line-height:1.4}
.promotion-price span{font-size:14px;font-weight:400}.product .promotion-date{font-size:14px;color:var(--muted)}
.product .promotion-comment,#detail-content .promotion-comment{font-size:16px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere;color:var(--ink)}
#quantity-status:not(:empty){color:#9c3622;font-size:14px}.quote-row .quantity input{width:110px;max-width:34vw}
@media(max-width:600px){.weekly-offers{padding:35px 5%}.weekly-offers .section-title{display:block}.promotion-label{font-size:14px}}

/* Keep the catalog available while building a selection. */
.selection-help{font-size:16px;line-height:1.6;color:var(--muted);margin:0 0 24px}
.add.is-selected{border-color:var(--green);color:var(--green);background:var(--paper)}
.add.is-selected:hover{background:var(--green);color:white}
.continue-shopping{width:100%;min-height:48px;padding:12px 16px;margin:0 0 14px;border:1px solid var(--green);border-radius:4px;background:white;color:var(--green);font-size:16px}
.selection-bar{position:fixed;bottom:0;left:0;right:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 5% calc(14px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -5px 24px #0000000d}
.selection-bar[hidden]{display:none}.selection-bar p{margin:0;font-size:16px;font-weight:500;overflow-wrap:anywhere}.selection-bar .primary{font-size:16px;min-height:48px;padding:12px 20px;flex-shrink:0}
body.has-selection{padding-bottom:calc(90px + env(safe-area-inset-bottom))}body.has-selection #toast{bottom:calc(96px + env(safe-area-inset-bottom))}
@media(max-width:380px){.selection-bar{gap:10px}.selection-bar p{font-size:14px}.selection-bar .primary{padding:12px 14px;font-size:14px}}
