
:root{ --gold:#C09B4A; --gold-2:#E7C878; --amber:#C97A28; --ivory:#F7F3EC; --ink:#1E1B16; --sand:#E6DECF; --muted:#7A6B59; --radius:18px; --shadow:0 10px 30px rgba(0,0,0,.12); }
*{box-sizing:border-box}
html,body{margin:0;background:var(--ivory);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px}
.section{padding:68px 0}
.muted{color:var(--muted)}
.grid{display:grid;gap:20px}
@media(min-width:900px){.grid-2{grid-template-columns:1.2fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}}
.card{background:#fff;border:1px solid var(--sand);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.card-inner{padding:20px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;border-radius:999px;border:1px solid transparent;font-weight:700;cursor:pointer;transition:.25s;box-shadow:var(--shadow)}
.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#fff}
.btn-primary:hover{transform:translateY(-2px)}
.btn-ghost{background:rgba(255,255,255,.6);border:1px solid var(--sand)}
.pill{display:inline-block;padding:8px 12px;border-radius:999px;border:1px solid var(--sand);background:#fff;font-weight:600}
.pill.gold{border-color:rgba(192,155,74,.35);background:linear-gradient(180deg,#fff,rgba(255,255,255,.7))}

/* Header / Nav */
header{position:sticky;top:0;z-index:40;backdrop-filter:saturate(140%) blur(8px);
  background:linear-gradient(180deg, rgba(247,243,236,.92), rgba(247,243,236,.7));
  border-bottom:1px solid var(--sand)}
.nav{height:80px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:240px;height:auto}
.nav-toggle{display:none}
nav ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}
nav a{font-weight:600;position:relative;padding:6px 0;opacity:.9}
nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold-2));transition:right .28s}
nav a:hover{opacity:1} nav a:hover::after{right:0}
nav a.active{opacity:1}
nav a.active::after{right:0}
@media(max-width:820px){
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;border:1px solid var(--sand);background:#fff}
  nav ul{position:absolute;left:0;right:0;top:80px;background:#fff;border-bottom:1px solid var(--sand);display:none;flex-direction:column;padding:14px 20px}
  nav ul.open{display:flex}
}

/* Hero */
.hero{position:relative;overflow:hidden;color:#fff;background:#000}
.hero::before{content:"";position:absolute;inset:0;background:url('../assets/hero-bg.png') center/cover no-repeat;filter:brightness(.58)}
.hero::after{content:"";position:absolute;inset:0;opacity:.25;background-image:radial-gradient(circle at 25% 25%, rgba(201,122,40,.25) 0 1px, transparent 1px),radial-gradient(circle at 75% 75%, rgba(231,200,120,.22) 0 1px, transparent 1px);background-size:24px 24px;mix-blend-mode:soft-light}
.hero .inner{position:relative;text-align:center;padding:96px 20px 72px}
.hero .eyebrow{display:inline-block;font-size:.9rem;letter-spacing:.12em;text-transform:uppercase;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.25);padding:8px 12px;border-radius:999px}
.hero h1{font-family:Marcellus,serif;font-size:clamp(2.2rem,5vw,4rem);margin:18px 0 8px;line-height:1.12;text-shadow:0 2px 16px rgba(0,0,0,.5)}
.hero .lead{font-size:clamp(1rem,2.2vw,1.15rem);opacity:.95;max-width:860px;margin:0 auto 28px}
.cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* Section titles */
.h2{font-family:Marcellus,serif;font-size:clamp(1.6rem,3.2vw,2.2rem);margin:0 0 14px;letter-spacing:.02em;position:relative;color:var(--ink)}
.h2.gold{background:linear-gradient(90deg,var(--gold-2),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 .5px 0 rgba(0,0,0,.08)}
.h2 .glow{position:absolute;left:0;top:-14px;height:8px;width:140px;background:linear-gradient(90deg,rgba(224,202,158,.45), transparent);filter:blur(6px);opacity:.5;pointer-events:none}

/* Reveal */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease, transform .6s ease}
.reveal.show{opacity:1;transform:none}

/* Hover cards + thumbs */
.card.hoverable{transition:transform .25s ease, box-shadow .25s ease}
.card.hoverable:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(0,0,0,.18)}
.thumb{aspect-ratio:16/9;width:100%;object-fit:cover;display:block}

/* Icons */
.icon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.icon{display:flex;align-items:center;gap:10px;background:linear-gradient(180deg,#fff,#f8f4ed);border:1px solid var(--sand);border-radius:14px;padding:10px}
.icon i{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--gold-2),var(--gold));display:inline-block;box-shadow:0 3px 10px rgba(0,0,0,.2)}

/* Floating WhatsApp */
.whatsapp-float{position:fixed;right:18px;bottom:18px;z-index:60}
.whatsapp-float a{display:inline-flex;align-items:center;gap:10px;background:#25D366;color:#fff;border-radius:999px;padding:12px 16px;font-weight:700;box-shadow:0 10px 22px rgba(37,211,102,.4)}

/* IA Bot modal */
.bot-button{position:fixed;right:18px;bottom:78px;z-index:60;display:inline-flex;align-items:center;gap:10px;background:#111;color:#fff;border-radius:999px;padding:12px 16px;font-weight:700;box-shadow:0 10px 22px rgba(0,0,0,.35)}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;z-index:70}
.modal.open{display:flex}
.modal-card{width:min(800px,92vw);background:#fff;border-radius:16px;border:1px solid var(--sand);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;max-height:80vh}
.modal-head{padding:12px 16px;background:linear-gradient(180deg,#fff,#f8f3e9);display:flex;justify-content:space-between;align-items:center}
.modal-body{padding:12px 16px;overflow:auto}
.chat{display:flex;flex-direction:column;gap:10px}
.msg{padding:10px 12px;border-radius:12px;max-width:82%}
.msg.user{align-self:flex-end;background:#e9f5ff;border:1px solid #cde8ff}
.msg.bot{align-self:flex-start;background:#fff7e6;border:1px solid #fde2a2}
.modal-foot{padding:12px 16px;border-top:1px solid var(--sand);display:flex;gap:10px}
.modal-foot input{flex:1;padding:12px 14px;border-radius:12px;border:1px solid var(--sand)}
.modal-close{border:none;background:transparent;font-size:22px;cursor:pointer}

/* Footer */
footer{padding:28px 0;border-top:1px solid var(--sand);font-size:.95rem;color:var(--muted)}
