:root{--coffee:#4b2b16;--coffee-2:#2b170d;--gold:#c49a5a;--olive:#303518;--cream:#f7f1e7;--paper:#fffaf2;--ink:#1f1a16;--muted:#6e6258;--white:#fff;--shadow:0 24px 70px rgba(43,23,13,.16);--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}.wrap{width:min(1160px,92vw);margin-inline:auto}.skip-link{position:absolute;left:-999px;top:8px;background:#000;color:#fff;padding:.6rem 1rem;z-index:1000}.skip-link:focus{left:8px}.site-header{position:fixed;inset:0 0 auto 0;z-index:50;background:rgba(43,23,13,.72);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.12)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--white);font-weight:700;letter-spacing:.02em;line-height:1}.brand img{width:64px;height:64px;object-fit:contain;border-radius:14px;background:#fff;padding:3px}.brand strong{font-family:"Cormorant Garamond",serif;font-size:1.25rem}.nav-links{display:flex;align-items:center;gap:1.1rem;color:#fff}.nav-links a{text-decoration:none;font-weight:600;font-size:.93rem;opacity:.92}.nav-links a:hover{color:var(--gold)}.lang-btn,.menu-toggle{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:.45rem .7rem;font-weight:800;cursor:pointer}.lang-btn.active{background:var(--gold);color:#2b170d}.menu-toggle{display:none;font-size:1.35rem}.hero{min-height:100svh;position:relative;display:grid;place-items:center;padding:130px 0 80px;overflow:hidden}.hero-bg,.hero-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(31,16,7,.88),rgba(75,43,22,.68),rgba(31,16,7,.52));z-index:1}.hero-content{position:relative;z-index:2;color:#fff}.hero-logo{width:150px;height:150px;object-fit:contain;background:rgba(255,255,255,.92);padding:8px;border-radius:22px;margin-bottom:1.3rem}.eyebrow,.section-kicker{letter-spacing:.18em;text-transform:uppercase;font-weight:800;font-size:.78rem;color:var(--gold)}h1,h2,h3{line-height:1.04;margin:0}h1{font-family:"Cormorant Garamond",serif;font-size:clamp(3.2rem,8vw,7.8rem);max-width:920px;text-wrap:balance}h2{font-family:"Cormorant Garamond",serif;font-size:clamp(2.3rem,5vw,4.7rem);text-wrap:balance}h3{font-size:1.25rem}.lead{font-size:clamp(1.08rem,2vw,1.35rem);max-width:760px;color:#f8ead9}.hero-actions,.social-grid,.contact-layout,.video-layout,.footer-grid{display:grid;gap:1rem}.hero-actions{grid-template-columns:repeat(2,max-content);margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:1rem 1.45rem;text-decoration:none;font-weight:800;border:0;cursor:pointer;transition:.25s ease}.btn.primary{background:linear-gradient(135deg,var(--gold),#f1d09d);color:#281407;box-shadow:0 18px 36px rgba(0,0,0,.22)}.btn.ghost{color:#fff;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08)}.btn:hover{transform:translateY(-3px)}.section{padding:90px 0}.intro{display:grid;grid-template-columns:1.25fr .75fr;gap:1.5rem;align-items:stretch}.intro-card,.stats,.social-card,.contact-form,.service-card,.map-card{border-radius:var(--radius);box-shadow:var(--shadow)}.intro-card{background:#fff;padding:clamp(1.4rem,4vw,3rem)}.intro-card p,.section-head p,.video-layout p,.contact-info p{color:var(--muted);font-size:1.05rem}.stats{background:var(--coffee);color:#fff;padding:2rem;display:grid;gap:1rem}.stats div{padding:1rem;border-radius:20px;background:rgba(255,255,255,.08)}.stats strong{display:block;color:var(--gold);font-size:1.15rem}.stats span{color:#f9ead9}.services{background:linear-gradient(180deg,#fffaf2,#f2e6d7)}.section-head{text-align:center;margin-bottom:2.5rem}.section-head p{max-width:650px;margin:.8rem auto 0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.service-card{background:#fff;overflow:hidden;transition:.25s ease}.service-card:hover{transform:translateY(-6px)}.service-card picture{height:260px;overflow:hidden}.service-card img{width:100%;height:100%;object-fit:cover;transition:.4s ease}.service-card:hover img{transform:scale(1.06)}.service-card div{padding:1.4rem}.service-card p{color:var(--muted);margin-bottom:0}.banner-cta{background:linear-gradient(rgba(43,23,13,.75),rgba(43,23,13,.75)),url('../img/mesa-madera.jpg') center/cover fixed;color:#fff;text-align:center}.banner-cta p{max-width:700px;margin:1rem auto 1.5rem;color:#f8ead9}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:1rem}.gallery-item{border:0;padding:0;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;background:#ddd}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s ease}.gallery-item:hover img{transform:scale(1.06)}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.video-section{background:var(--coffee-2);color:#fff}.video-layout{grid-template-columns:.75fr 1.25fr;align-items:center}.video-layout p{color:#f4dfc4}.video-box{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.1)}.video-box iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.social-grid{grid-template-columns:1fr 1fr}.social-card{background:#fff;padding:1.5rem;overflow:hidden}.fb-frame{width:100%;max-width:100%;border-radius:20px;background:#f8f8f8}.instagram-card img{height:325px;width:100%;object-fit:cover;border-radius:20px}.social-link{display:inline-flex;margin-top:1rem;font-weight:800;color:var(--coffee)}.contact{background:linear-gradient(180deg,#f2e6d7,#fffaf2)}.contact-layout{grid-template-columns:1fr .9fr;align-items:start}.contact-list{list-style:none;padding:0;margin:1.5rem 0;display:grid;gap:.7rem}.contact-list a{color:var(--coffee);font-weight:800}.map-card{overflow:hidden;background:#fff;padding:.6rem}.map-card iframe{border:0;width:100%;height:300px;border-radius:22px}.contact-form{background:#fff;padding:clamp(1.2rem,3vw,2rem);display:grid;gap:1rem}.contact-form label{font-weight:800;color:var(--coffee)}.contact-form input,.contact-form textarea{width:100%;margin-top:.35rem;border:1px solid #eadccd;border-radius:16px;padding:1rem;font:inherit;background:#fffaf6;color:var(--ink)}.form-note{font-size:.85rem;color:var(--muted);margin:0}.site-footer{background:#17100b;color:#fff;padding:2.5rem 0}.footer-grid{grid-template-columns:auto 1fr;align-items:center}.footer-grid img{border-radius:18px;background:#fff;padding:3px}.site-footer a{color:#f1d09d}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:60;width:64px;height:64px;border-radius:50%;background:#22c55e;color:#fff;display:grid;place-items:center;text-decoration:none;font-size:2rem;font-weight:900;box-shadow:0 16px 35px rgba(0,0,0,.25);animation:pulse 1.8s infinite}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.86);z-index:100;display:none;align-items:center;justify-content:center;padding:2rem}.lightbox.open{display:flex}.lightbox img{max-height:88vh;max-width:92vw;border-radius:18px;box-shadow:0 20px 90px rgba(0,0,0,.45)}.lightbox-close{position:absolute;right:22px;top:18px;background:#fff;border:0;border-radius:50%;width:46px;height:46px;font-size:2rem;cursor:pointer}.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}@media(max-width:980px){.menu-toggle{display:block}.nav-links{position:absolute;right:4vw;top:88px;background:rgba(43,23,13,.96);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:1rem;display:none;flex-direction:column;align-items:flex-start;min-width:230px}.nav-links.open{display:flex}.intro,.video-layout,.social-grid,.contact-layout{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.brand span{display:none}.hero{padding-top:120px}.hero-logo{width:118px;height:118px}.hero-actions{grid-template-columns:1fr}.section{padding:64px 0}.service-grid,.gallery-grid{grid-template-columns:1fr;grid-auto-rows:260px}.gallery-item.tall,.gallery-item.wide{grid-row:auto;grid-column:auto}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-grid img{margin:auto}.whatsapp-float{width:58px;height:58px;right:16px;bottom:16px}}
