*{margin:0;padding:0;box-sizing:border-box}:root{--bg-main:#0b0b0b;--bg-section:#121212;--card-bg:#1a1a1a;--text-main:#ffffff;--text-soft:#cfcfcf;--border-soft:#2a2a2a;--accent:#c9a646}body{background:var(--bg-main);color:var(--text-main);font-family:Inter,sans-serif;line-height:1.9;font-size:clamp(22px,1.6vw,26px);text-align:center;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.container{width:90%;max-width:1150px;margin:auto}.header{background:rgba(10,10,10,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-soft);position:sticky;top:0;z-index:100}.header-flex{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.logo{height:110px}.header nav a{margin-left:1.5rem;text-decoration:none;color:var(--text-main);font-family:Inter,sans-serif;font-size:clamp(20px,1.3vw,22px);font-weight:500;transition:opacity .2s ease}.header nav a:hover{opacity:.7}.hero{position:relative;padding:170px 0;background-image:url("assets/img/hero.jpg");background-size:cover;background-position:center;color:#fff;overflow:hidden}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.55),rgba(0,0,0,.85))}.hero-center{position:relative;z-index:2;animation:fadeUp 1.2s ease}.hero-center h1{font-family:"Cormorant Garamond",serif;font-size:clamp(64px,5vw,92px);font-weight:600;letter-spacing:.5px}.tagline{margin-top:1.6rem;font-family:Inter,sans-serif;font-size:clamp(26px,2vw,34px);color:var(--text-soft);max-width:760px;margin-left:auto;margin-right:auto}.carousel{margin-top:3rem;overflow:hidden;position:relative}.carousel-track{display:flex;gap:2.5rem;width:max-content;animation:carousel-scroll 40s linear infinite}.carousel-track:hover{animation-play-state:paused}.slide{flex-shrink:0}.slide img{width:420px;height:260px;object-fit:cover;border-radius:14px;transition:all .35s ease}.slide img:hover{transform:scale(1.07);box-shadow:0 20px 40px rgba(0,0,0,.6)}@keyframes carousel-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.section{padding:7rem 0;animation:fadeUp 1s ease}.section.light{background:var(--bg-section)}.presentacion-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:90px;align-items:center;margin-top:50px}.presentacion-foto img{width:100%;max-width:440px;border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.6);transition:transform .35s ease}.presentacion-foto img:hover{transform:scale(1.04)}.presentacion-texto{text-align:left}.presentacion-texto p{max-width:820px;margin:0;text-align:justify;text-justify:inter-word;hyphens:none;word-break:normal;overflow-wrap:normal;line-height:1.9}h2{font-family:"Cormorant Garamond",serif;font-size:clamp(42px,3vw,56px);margin-bottom:2.2rem;color:var(--accent)}h3{font-family:"Cormorant Garamond",serif;font-size:clamp(28px,2vw,36px);margin-bottom:14px}h4{font-family:"Cormorant Garamond",serif;font-size:clamp(22px,1.5vw,28px);margin-top:10px}p{font-family:Inter,sans-serif;max-width:840px;margin:auto;margin-bottom:1.8rem;color:var(--text-soft);font-size:clamp(22px,1.4vw,26px)}.casos-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem;margin-top:3rem}.caso-card{background:var(--card-bg);padding:3rem;border-radius:16px;border:1px solid var(--border-soft);transition:all .35s ease}.caso-card:hover{transform:translateY(-8px);box-shadow:0 20px 50px rgba(0,0,0,.6)}.servicios-extra{display:none;margin-top:20px}.servicios-extra ul{list-style:none;margin-top:16px;padding:0}.servicios-extra li{font-family:Inter,sans-serif;padding:10px 0;border-bottom:1px solid var(--border-soft);font-size:clamp(20px,1.2vw,22px)}.servicios-close,.servicios-toggle{margin-top:18px;font-family:Inter,sans-serif;background:#fff;color:#000;border:none;padding:14px 30px;border-radius:26px;cursor:pointer;font-size:clamp(18px,1.2vw,22px);transition:.3s}.servicios-close:hover,.servicios-toggle:hover{background:var(--accent)}.contact-icons{display:flex;justify-content:center;gap:2.5rem;margin-top:3rem}.contact-icons a{font-family:Inter,sans-serif;text-decoration:none;background:#fff;color:#000;padding:18px 36px;border-radius:34px;font-size:clamp(20px,1.4vw,24px);transition:all .25s ease}.contact-icons a:hover{transform:scale(1.07);background:var(--accent)}

.footer{font-family:Inter,sans-serif;margin-top:5rem;padding:2rem;border-top:1px solid var(--border-soft);color:var(--text-soft);font-size:clamp(14px,.8vw,16px);text-align:center;display:flex;justify-content:center}

.footer p{white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}

.whatsapp{position:fixed;right:22px;bottom:22px;background:#25d366;color:#fff;font-size:34px;width:72px;height:72px;display:flex;align-items:center;justify-content:center;border-radius:50%;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.6);transition:transform .3s ease}.whatsapp:hover{transform:scale(1.15)}

@keyframes fadeUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:900px){.hero{padding:120px 0}.hero-center h1{font-size:clamp(48px,8vw,60px)}.carousel-track{gap:1rem}.slide img{width:280px;height:180px}.presentacion-grid{grid-template-columns:1fr;text-align:center}.presentacion-texto{text-align:left}.presentacion-texto p{text-align:left}.presentacion-foto img{margin:auto}.casos-grid{grid-template-columns:1fr}.contact-icons{flex-direction:column;gap:1.5rem}}