
:root{
  --bg:#f4efe6; --sand:#e9e1d2; --olive:#6f785f; --deep:#5a3c2a; --text:#2b2b2b;
  --white:#fff; --muted:#6b6b6b; --shadow:0 10px 30px rgba(0,0,0,.12);
}
*{box-sizing:border-box} html,body{margin:0;padding:0} html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;color:var(--deep)}
h1{font-size:clamp(2.2rem,3.4vw+1rem,3.6rem);line-height:1.15} h1 em{font-style:italic}
h2{font-size:clamp(1.6rem,1.8vw+1rem,2.2rem)} h3{font-size:clamp(1.1rem,1.2vw+.8rem,1.25rem)}
a{color:var(--olive);text-decoration:none} a:hover{text-decoration:underline}
.container{max-width:1200px;margin:0 auto;padding:0 1.25rem}

.header{position:sticky;top:0;z-index:60;background:rgba(244,239,230,.95);backdrop-filter:blur(8px);border-bottom:1px solid #e8e0d2}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:70px;gap:1rem}
.brand{display:flex;align-items:center;gap:.75rem}
.mark{width:34px;height:34px} .brand-text{display:flex;flex-direction:column;line-height:1}
.logo{font-weight:700;letter-spacing:.06em;color:var(--deep)} .tag{font-size:.85rem;color:#7b6b5a;letter-spacing:.06em}
.menu{display:flex;gap:1.1rem;align-items:center} .menu a{color:#3b3b3b}
.hamburger{display:none;background:transparent;border:0;padding:.5rem;cursor:pointer} .hamburger span{display:block;width:22px;height:2px;background:#3b3b3b;margin:5px 0}
@media (max-width:860px){.menu{display:none}.hamburger{display:block}.menu-mobile[hidden]{display:none}.menu-mobile{display:flex;flex-direction:column;padding:.75rem 1.25rem;border-top:1px solid #e8e0d2;background:var(--bg)}.menu-mobile a{padding:.5rem 0}}

.btn{display:inline-block;border-radius:8px;padding:.9rem 1.2rem;border:1px solid var(--olive);background:var(--olive);color:var(--white);font-weight:700;box-shadow:var(--shadow)}
.btn-primary{background:#6b725e;border-color:#6b725e} .btn-outline{background:transparent;color:var(--olive);border:1px solid var(--olive)}
.btn:hover{transform:translateY(-2px)}

.hero{position:relative;min-height:78vh;display:flex;align-items:center;background:linear-gradient(180deg,#efe7d9,#efe7d9)}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.32;filter:grayscale(18%) contrast(95%)}
.hero::after{content:"";position:absolute;inset:0;background:rgba(90,60,42,0.35)}
.hero-inner{position:relative;padding:7rem 0;text-align:center;max-width:1000px;z-index:2}
.lead{color:#3b3b3b;margin:1rem auto 1.25rem}
.cta{margin-top:.5rem}

.section{padding:4.5rem 0} .sand{background:var(--sand)}
.grid-2{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center} @media (max-width:980px){.grid-2{grid-template-columns:1fr;gap:2rem}}
.symbol-only{display:grid;place-items:center} .symbol-only img{width:70%;max-width:360px;opacity:.9}
.photo img{width:100%;height:auto;border-radius:16px;box-shadow:var(--shadow);background:#fff}

.checks{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.4rem} .checks li::before{content:'• ';color:var(--olive);font-weight:700}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem} .card{background:#fff;border:1px solid #e8e0d2;border-radius:16px;padding:1.2rem;box-shadow:var(--shadow)} .card h3{color:#6b725e;margin-bottom:.4rem}
@media (max-width:980px){.cards{grid-template-columns:1fr}}

.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem} .post{background:#fff;border:1px solid #e8e0d2;border-radius:12px;padding:1rem;box-shadow:var(--shadow)}
@media (max-width:980px){.posts{grid-template-columns:1fr}}

.insta-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem;align-items:start} @media (max-width:900px){.insta-wrap{grid-template-columns:1fr}}
.insta-post{background:#fff;border:1px solid #e8e0d2;border-radius:14px;box-shadow:var(--shadow);overflow:hidden}
.insta-header{display:flex;align-items:center;gap:.6rem;padding:.8rem 1rem;border-bottom:1px solid #eee}
.insta-avatar{width:36px;height:36px;border-radius:50%;background:#f2eee6;box-shadow:0 0 0 1px #d8cfbf inset}
.insta-media img{display:block;width:100%;height:auto}
.insta-caption{display:block;padding:.8rem 1rem}
.insta-cta{background:#fff;border:1px dashed #d8cfbf;border-radius:12px;padding:1.25rem;box-shadow:var(--shadow);text-align:center}

.contact .contact-list{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.45rem}
.maps{display:grid;grid-template-columns:1fr;gap:.75rem} .map{width:100%;height:320px;border:0;border-radius:12px;box-shadow:var(--shadow)}
.map-links-final{margin-top:.9rem;display:flex;gap:.6rem;align-items:center;justify-content:center;flex-wrap:wrap} .map-links-final .muted{margin-right:.25rem}

.footer{padding:2rem 0;border-top:1px solid #e8e0d2;background:#faf7f1} .footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap} .footer-brand{display:flex;align-items:center;gap:.6rem;color:#3b3b3b} .footer-nav a{margin-left:1rem}

.whatsapp-fab{position:fixed;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;box-shadow:var(--shadow);z-index:60} .whatsapp-fab svg{width:26px;height:26px;fill:#fff}


.section-subtitle{
  font-size:0.95rem;
  color:var(--muted);
  margin:0 0 1.2rem;
}

.feature-list{
  list-style:none;
  padding:0;
  margin:1.25rem 0 0;
  display:grid;
  gap:1rem;
}
.feature-list li{
  background:#fff;
  border-radius:12px;
  padding:1rem 1.25rem;
  border:1px solid #e8e0d2;
  box-shadow:var(--shadow);
}

/* Textos como botões */
.posts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1rem;
}
@media (max-width:980px){
  .posts{grid-template-columns:1fr;}
}
.posts .post{
  background:#fff;
  border-radius:12px;
  padding:1rem 1.25rem;
  border:1px solid #e8e0d2;
  box-shadow:var(--shadow);
  cursor:pointer;
  text-align:left;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.posts .post:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(0,0,0,.14);
  border-color:var(--olive);
}
.post-link{
  display:inline-block;
  margin-top:0.35rem;
  font-size:0.8rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--olive);
}
.post-detail{
  margin-top:2.5rem;
  padding:1.5rem 1.25rem;
  border-radius:14px;
  background:#fff;
  border:1px solid #e8e0d2;
  box-shadow:var(--shadow);
}

/* Instagram slider */
.insta-slider{
  position:relative;
  display:flex;
  align-items:center;
  gap:0.75rem;
  padding:0.75rem 1rem 1rem;
}
.insta-track{
  flex:1;
  position:relative;
  overflow:hidden;
  border-radius:14px;
}
.insta-slide{
  display:none;
}
.insta-slide.active{
  display:block;
}
.insta-track img{
  display:block;
  width:100%;
  height:auto;
}
.insta-nav{
  border-radius:999px;
  width:32px;
  height:32px;
  border:1px solid #d8cfbf;
  background:#fff;
  cursor:pointer;
}
.insta-dots{
  display:flex;
  gap:0.4rem;
  padding:0 1rem 1rem;
}
.insta-dots .dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d0c6b6;
}
.insta-dots .dot.active{
  background:#6f785f;
}

/* Maps side by side */
.maps{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1rem;
}
@media (max-width:900px){
  .maps{grid-template-columns:1fr;}
}
.map{
  width:100%;
  min-height:260px;
  border:0;
  border-radius:12px;
  box-shadow:var(--shadow);
}
