@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Inter:wght@400;500;600&display=swap');

:root{
  --bg:#0f0b08;
  --brown:#1e1611;
  --brown-2:#140f0b;
  --cream:#fbf1df;
  --gold:#c9a24a;
  --gold2:#e0c27a;
  --text:#f5f2ee;
  --muted:#cfc7bf;
  --stroke: rgba(255,255,255,.12);
  --shadow: 0 18px 60px rgba(0,0,0,.55);
  --r12: 12px;
  --r16: 16px;
}

*{box-sizing:border-box;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)}a{color:inherit}.container{width:min(1120px, 90%);margin:0 auto}.muted{color:var(--muted)}.section{padding:92px 0}.section-light{background:linear-gradient(180deg,#12100d 0%,#0f0b08 40%,#0f0b08 100%)}.section-dark{background:var(--brown)}.site-header{z-index:1000}.header-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0}.brand{display:flex;align-items:center;text-decoration:none}.brand img{height:42px;width:auto;object-fit:contain}.nav-desktop{display:flex;align-items:center;gap:22px}.nav-desktop a{text-decoration:none;color:var(--muted);font-weight:500}.nav-desktop a:hover{color:var(--text)}.nav-cta{padding:10px 14px;border-radius:12px;border:1px solid rgb(251 241 223 / .25);background:rgb(255 255 255 / .04)}.menu-btn{display:none;width:44px;height:44px;border-radius:12px;border:1px solid rgb(251 241 223 / .25);background:rgb(255 255 255 / .04);cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-btn span{width:22px;height:2px;display:block;background:var(--cream);border-radius:2px;transition:.2s ease}.menu-btn.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-btn.is-open span:nth-child(2){opacity:0}.menu-btn.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-overlay{position:fixed;inset:0;width:100vw;height:100vh;display:none;background:rgb(0 0 0 / .75);backdrop-filter:blur(6px);z-index:2000}.mobile-overlay.is-open{display:block}.mobile-panel{position:absolute;right:14px;top:72px;width:min(360px, 92vw);background:rgb(30 22 17 / .96);border:1px solid rgb(251 241 223 / .22);border-radius:16px;box-shadow:var(--shadow);padding:14px}.mobile-head{display:flex;align-items:center;justify-content:space-between;padding:6px 6px 10px;color:rgb(245 242 238 / .92);font-weight:700}.mobile-close{border:1px solid rgb(255 255 255 / .12);background:rgb(255 255 255 / .04);color:var(--text);border-radius:10px;padding:8px 10px;cursor:pointer}.nav-mobile{display:flex;flex-direction:column;gap:10px;padding:6px}.nav-mobile a{text-decoration:none;padding:12px 12px;border-radius:12px;background:rgb(255 255 255 / .03);border:1px solid rgb(255 255 255 / .06)}.nav-mobile a:hover{background:rgb(251 241 223 / .08);border-color:rgb(251 241 223 / .22)}.hero{position:relative;min-height:100svh;padding-top:90px;overflow:hidden}.hero-bg{position:absolute;inset:0;background-image:linear-gradient(120deg,rgb(201 162 74 / .15),#fff0),url(https://images.unsplash.com/photo-1589829545856-d10d557cf95f?auto=format&fit=crop&w=2400&q=80);background-size:cover;background-position:center;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgb(15 11 8 / .92) 0%,rgb(15 11 8 / .70) 45%,rgb(15 11 8 / .35) 100%)}.hero-grid{position:relative;display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;padding:70px 0}.eyebrow{display:inline-block;color:rgb(245 242 238 / .9);letter-spacing:.12em;text-transform:uppercase;font-size:1.1rem;margin-bottom:14px}.hero h1{font-family:"Playfair Display",serif;font-size:clamp(40px, 5.6vw, 72px);line-height:1.05;margin-bottom:18px}.lead{color:var(--muted);font-size:1.05rem;line-height:1.75;margin-bottom:26px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.hero-contact{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.pill{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:999px;background:rgb(255 255 255 / .04);border:1px solid rgb(255 255 255 / .08)}.pill-label{color:rgb(245 242 238 / .65);font-size:.85rem}.pill a{text-decoration:none;color:rgb(245 242 238 / .92)}.hero .lead{text-align:justify;text-justify:inter-word}.hero-card{background:rgb(30 22 17 / .75);border:1px solid rgb(251 241 223 / .18);border-radius:18px;box-shadow:var(--shadow);padding:22px}.hero-card h3{margin-bottom:8px}.hero-card p{color:var(--muted);line-height:1.7;margin-bottom:14px}.hero-card small{display:block;margin-top:12px;color:rgb(245 242 238 / .70)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:12px;text-decoration:none;font-weight:700;color:#cbcbcb;background:#9a835f}.btn-outline{background:#fff0;color:var(--text);border:1px solid rgb(251 241 223 / .35)}.btn-full{width:100%}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:28px}.section-head h2{font-family:"Playfair Display",serif;font-size:40px;line-height:1.1}.section-head p{max-width:520px}.split{display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch;gap:28px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}.feature{background:rgb(255 255 255 / .03);border:1px solid rgb(255 255 255 / .06);border-radius:14px;padding:16px;text-align:center}.feature h3{font-size:.95rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.quienes-texto p{text-align:justify;line-height:2.9}.quienes-texto{display:flex;flex-direction:column;justify-content:center}.feature p{color:var(--muted);line-height:1.65}.photo-card{height:100%;display:flex;flex-direction:column}.photo{width:100%;height:100%;background-image:url(https://images.unsplash.com/photo-1562564055-71e051d33c19?auto=format&fit=crop&w=1800&=80);background-size:cover;background-position:center}@media (max-width:980px){.photo{height:220px;background-position:center}.photo-card{margin-top:18px}}.photo-caption{padding:16px}.photo-caption strong{display:block;margin-bottom:4px}.stats{margin-top:28px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:#fbf1df;border:1px solid #fbf1df;border-radius:16px;padding:18px;text-align:center}.stat-num{font-family:"Playfair Display",serif;font-size:42px;color:#140f0b}.stat-label{color:#140f0b}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:rgb(255 255 255 / .04);border:1px solid rgb(255 255 255 / .06);border-radius:16px;padding:20px}.card h3{margin-bottom:10px}.list{list-style:none;margin-top:10px}.list li{padding:8px 0;border-bottom:1px solid rgb(255 255 255 / .06);color:var(--muted)}.list li:last-child{border-bottom:none}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.spec{background:rgb(255 255 255 / .04);border:1px solid rgb(255 255 255 / .06);border-radius:16px;padding:20px}.spec h3{margin-bottom:10px;color:var(--gold2)}.cta-band{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 18px;border-radius:18px;background:linear-gradient(135deg,rgb(201 162 74 / .18),rgb(255 255 255 / .04));border:1px solid rgb(251 241 223 / .18)}.section.servicios{background:#2a1f18}.testimonials{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.quote{background:rgb(255 255 255 / .04);border:1px solid rgb(255 255 255 / .06);border-radius:16px;padding:20px}.quote p{color:rgb(245 242 238 / .90);line-height:1.75}.who{margin-top:12px;display:flex;gap:10px;align-items:baseline}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:start}.contact-lines{display:grid;gap:10px;margin:14px 0 18px}.contact-lines a{text-decoration:none;color:rgb(245 242 238 / .92)}.social{display:flex;gap:12px;margin-top:14px}.social a{color:rgb(245 242 238 / .80);text-decoration:none}.social a:hover{color:rgb(245 242 238)}.map-card{background:rgb(255 255 255 / .04);border:1px solid rgb(255 255 255 / .06);border-radius:16px;padding:16px}.map-iframe{width:100%;height:280px;border:0;border-radius:14px;overflow:hidden}.footer{padding:22px 0;background:#000;border-top:1px solid rgb(255 255 255 / .06)}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:10px;color:rgb(245 242 238 / .85)}.reveal{opacity:0;transform:translateY(16px);transition:.7s ease}.reveal.active{opacity:1;transform:none}@media (max-width:980px){.hero-grid{grid-template-columns:1fr;padding:56px 0}.split{grid-template-columns:1fr}.features{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.cards-3{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr}.testimonials{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:flex-start}}@media (max-width:900px){.nav-desktop{display:none}.menu-btn{display:flex}}@media (max-width:768px){.features{grid-template-columns:1fr}}@media screen and (max-width:1024px){.nav-desktop{display:none!important}}@supports not (height:100svh){.hero{min-height:100vh}}@media (max-width:768px){#quienes p{text-align:left}}@media (max-width:768px){.hero .lead{text-align:left}}.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:22px}@media (max-width:900px){.cases-grid{grid-template-columns:1fr}}@media (max-width:768px){.cases-grid{grid-template-columns:1fr}}.case-card{background:rgb(255 255 255 / .04);border:1px solid rgb(255 255 255 / .06);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.case-img{width:100%;height:160px;object-fit:cover;object-position:center 10%;background:#000}@media (max-width:768px){.case-img{height:220px;object-position:center}}.case-card h3{font-size:1.1rem;margin:14px 16px 8px;font-weight:600}@media (max-width:768px){.case-card h3{font-size:1.05rem}.case-text{font-size:.95rem;line-height:1.6}}.case-card a{display:block;margin:0 16px 14px;font-weight:600;color:var(--gold2);text-decoration:none}.case-card a:hover{text-decoration:underline}.cases-note{margin-top:20px;font-size:.85rem;text-align:center}.back-to-top{display:flex;justify-content:center;padding:40px 0 20px}.back-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 22px;border-radius:999px;text-decoration:none;font-weight:600;color:var(--text);border:1px solid rgb(251 241 223 / .35);background:rgb(255 255 255 / .04);transition:all .25s ease}.back-btn:hover{background:rgb(251 241 223 / .12);border-color:rgb(251 241 223 / .6);transform:translateY(-2px)}.section-dark{position:relative;overflow:hidden}.section-dark::after{content:"";position:absolute;left:0;right:0;bottom:0;height:140px;pointer-events:none;background:linear-gradient(to bottom,#fff0,rgb(0 0 0 / .6),rgb(0 0 0))}.section-dark>.container,.section-dark .back-to-top{position:relative;z-index:1}.section-dark::after{z-index:0}.social{display:flex;gap:14px;flex-wrap:wrap}.social a{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;text-decoration:none;font-weight:600;color:rgb(245 242 238 / .85);background:rgb(255 255 255 / .04);border:1px solid rgb(255 255 255 / .10);transition:all .25s ease}.social a svg{width:18px;height:18px;fill:currentColor}.social a:hover{background:rgb(201 162 74 / .15);border-color:rgb(201 162 74 / .45);color:var(--text);transform:translateY(-2px)}.footer-row span:last-child{font-size:.85rem;opacity:.75}.footer-row span:last-child{font-size:.85rem;opacity:.7}.features-values .feature p{text-align:justify;text-align-last:center}.features-values .feature p{font-size:.9rem;line-height:1.65;margin:0 auto;max-width:260px}.quienes-texto p{text-align:justify;text-justify:inter-word;line-height:1.75;margin-bottom:12px}@media (max-width:980px){.quienes-texto p{text-align:left;text-justify:auto}}.features-values{margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.features-values .feature{display:flex;flex-direction:column;justify-content:center;min-height:120px}.features-values .feature h3{text-transform:uppercase;letter-spacing:.08em;font-size:.95rem}.features-values .feature p{text-align:justify;text-align-last:center;line-height:1.6;max-width:260px;margin:0 auto}@media (max-width:980px){.features-values{grid-template-columns:1fr}}.hero h1{font-family:"Playfair Display",serif;font-size:clamp(36px, 4.5vw, 64px);line-height:1.08;max-width:620px}.hero-content{max-width:680px}.hero-contactos{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}@media (max-width:768px){.hero-contactos{flex-direction:column;align-items:stretch}.hero-contactos .btn{width:100%;text-align:center}}