@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=Work+Sans:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap');

:root{
  --wood-950:#241712; --wood-800:#3f2a1e; --wood-600:#6b4630; --wood-400:#a97a53;
  --sand-50:#faf6ee; --sand-100:#f2e8d8; --sand-200:#e6d8c0;
  --jade-600:#3a6b5a; --jade-500:#4c8571; --jade-100:#dcece5;
  --terracotta:#bb6b3a;
  --ink:#241712; --ink-soft:#5c4a3d; --line:#e0d2b8;
  --surface:#fff; --bg:var(--sand-50); --danger:#a4432e;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{background:var(--bg);color:var(--ink);font-family:'Work Sans',system-ui,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;font-weight:600;margin:0;text-wrap:balance;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.mono{font-family:'JetBrains Mono',monospace;font-variant-numeric:tabular-nums;}
.container{width:min(100% - 2.5rem,76rem);margin-inline:auto;}
.eyebrow{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--jade-600);font-weight:600;}

/* header */
.topbar{background:var(--wood-950);color:var(--sand-100);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;text-align:center;padding:8px 12px;}
header.site{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;}
.nav-row{display:flex;align-items:center;gap:28px;padding:16px 0;}
.brand{font-family:'Fraunces';font-size:1.35rem;font-weight:600;color:var(--wood-950);margin-right:auto;}
.brand span{color:var(--jade-600);}
nav.main-links{display:flex;gap:22px;font-size:.86rem;font-weight:500;}
nav.main-links a{color:var(--ink-soft);transition:color .15s;}
nav.main-links a:hover,nav.main-links a.active{color:var(--wood-950);}
.nav-actions{display:flex;align-items:center;gap:14px;}
.icon-link{width:38px;height:38px;border-radius:8px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:1rem;}
.icon-link:hover{border-color:var(--wood-400);}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:8px;font-size:.86rem;font-weight:600;border:1px solid transparent;cursor:pointer;transition:all .15s;}
.btn-primary{background:var(--wood-800);color:var(--sand-50);}
.btn-primary:hover{background:var(--wood-600);}
.btn-outline{border-color:var(--wood-800);color:var(--wood-950);background:transparent;}
.btn-outline:hover{background:var(--sand-100);}
.btn-jade{background:var(--jade-600);color:var(--sand-50);}
.btn-jade:hover{background:var(--jade-500);}
.btn-sm{padding:8px 14px;font-size:.78rem;}
.btn-block{width:100%;}

/* hero */
.hero{position:relative;min-height:640px;display:flex;align-items:flex-end;background:linear-gradient(180deg,rgba(36,23,18,.05),rgba(36,23,18,.72)),var(--wood-800) center/cover;}
.hero-content{padding:64px 0 60px;color:var(--sand-50);max-width:640px;}
.hero .eyebrow{color:var(--jade-100);}
.hero h1{font-size:clamp(2.4rem,5vw,4rem);color:var(--sand-50);margin:14px 0 18px;}
.hero p{font-size:1.05rem;color:var(--sand-200);margin-bottom:28px;max-width:520px;}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;}

/* section */
section{padding:72px 0;}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px;flex-wrap:wrap;}
.section-head h2{font-size:1.9rem;}
.section-head p{color:var(--ink-soft);max-width:32rem;}

/* category grid */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;}
.cat-card{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:4/5;background:var(--wood-600) center/cover;display:flex;align-items:flex-end;padding:18px;color:var(--sand-50);}
.cat-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(36,23,18,.75));}
.cat-card span{position:relative;font-family:'Fraunces';font-weight:600;font-size:1.15rem;}

/* product grid + card */
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:26px;}
.product-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s;}
.product-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px -14px rgba(36,23,18,.25);}
.product-card .thumb{aspect-ratio:4/3;background:var(--wood-400) center/cover;position:relative;}
.g-sala{background:linear-gradient(135deg,#8a5a3a,#3f2a1e);}
.g-comedor{background:linear-gradient(135deg,#a97a53,#6b4630);}
.g-recamara{background:linear-gradient(135deg,#6b4630,#241712);}
.g-jardin{background:linear-gradient(135deg,#4c8571,#2c4a3d);}
.g-oficina{background:linear-gradient(135deg,#bb6b3a,#5c3a20);}
.product-card .thumb .badge{position:absolute;top:10px;left:10px;background:rgba(36,23,18,.78);color:var(--sand-50);font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;padding:4px 8px;border-radius:999px;}
.product-card .body{padding:16px;display:flex;flex-direction:column;gap:6px;flex:1;}
.product-card h3{font-size:1.02rem;}
.product-card .dims{font-size:.76rem;color:var(--ink-soft);}
.product-card .price-row{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding-top:10px;}
.product-card .price{font-size:1.05rem;font-weight:600;color:var(--wood-950);}

/* filters */
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px;}
.chip{padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-size:.82rem;font-weight:500;cursor:pointer;color:var(--ink-soft);}
.chip.active{background:var(--jade-600);border-color:var(--jade-600);color:var(--sand-50);}

/* trust */
.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;}
.trust-item{padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--surface);}
.trust-item .num{font-family:'Fraunces';font-size:2rem;color:var(--jade-600);}

/* testimonial */
.testi{background:var(--wood-950);color:var(--sand-100);border-radius:18px;padding:48px;}
.testi blockquote{font-family:'Fraunces';font-size:1.5rem;font-weight:500;color:var(--sand-50);max-width:44rem;margin:0 0 18px;}
.testi cite{font-style:normal;font-size:.84rem;color:var(--jade-100);}

/* cta split */
.cta-split{display:grid;grid-template-columns:1.1fr 1fr;gap:0;border-radius:18px;overflow:hidden;background:var(--jade-600);color:var(--sand-50);}
.cta-split .txt{padding:48px;}
.cta-split .txt h2{color:var(--sand-50);font-size:1.8rem;margin-bottom:12px;}
.cta-split .img{background:var(--jade-100) center/cover;min-height:260px;}

/* footer */
footer.site{background:var(--wood-950);color:var(--sand-200);padding:56px 0 26px;margin-top:40px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;margin-bottom:36px;}
footer.site h4{color:var(--sand-50);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:14px;}
footer.site a{color:var(--sand-200);font-size:.86rem;display:block;margin-bottom:8px;opacity:.85;}
footer.site a:hover{opacity:1;}
.footer-bottom{border-top:1px solid rgba(250,246,238,.12);padding-top:20px;font-size:.76rem;color:var(--sand-200);opacity:.7;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}

/* product detail */
.pd-wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;}
.pd-gallery img{border-radius:14px;aspect-ratio:4/3;object-fit:cover;background:var(--wood-400);}
.pd-info h1{font-size:2rem;margin-bottom:10px;}
.pd-price{font-size:1.5rem;font-weight:600;color:var(--wood-950);margin:14px 0;}
.able">
   {width:100%;border-collapse:collapse;margin:18px 0;font-size:.86rem;}
.able">
    td{padding:8px 0;border-bottom:1px solid var(--line);}
.able">
    td:first-child{color:var(--ink-soft);}
.finish-row{display:flex;gap:10px;margin:14px 0;}
.finish-dot{width:30px;height:30px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line);cursor:pointer;}
.finish-dot.active{box-shadow:0 0 0 2px var(--jade-600);}

/* t
    (b2b) */
.b2b-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:.86rem;}
.b2b-table th{text-align:left;background:var(--sand-100);padding:12px 14px;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);}
.b2b-table td{padding:12px 14px;border-top:1px solid var(--line);}
.b2b-table tr:hover td{background:var(--sand-100);}

.gate-card{max-width:420px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:36px;}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
.field label{font-size:.78rem;color:var(--ink-soft);}
.field input,.field select,.field textarea{padding:11px 12px;border-radius:8px;border:1px solid var(--line);background:var(--sand-50);font-family:inherit;font-size:.9rem;}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.two-col img{border-radius:16px;}

.tag-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
.tag{font-size:.74rem;background:var(--sand-100);border:1px solid var(--line);padding:4px 10px;border-radius:999px;color:var(--ink-soft);}

@media(max-width:860px){
  .cta-split,.pd-wrap,.two-col{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  nav.main-links{display:none;}
}
