/* Come con calma — estilos compartidos del sitio */
:root{--turquesa:#2ABFBF;--petroleo:#1A5F7A;--petroleo-oscuro:#0D3D52;--blanco:#FAFAF8;--gris-claro:#EEEEE8;--gris-texto:#6B6B6B;--negro-suave:#1C1C1C;--grad:linear-gradient(135deg,#2ABFBF,#1A5F7A);}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;font-weight:400;color:var(--negro-suave);background:var(--blanco);overflow-x:hidden;}
a{color:inherit;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(250,250,248,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(42,191,191,.12);padding:0 40px;height:68px;display:flex;align-items:center;justify-content:space-between;}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:400;color:var(--petroleo-oscuro);letter-spacing:.5px;text-decoration:none;}
.nav-logo span{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.nav-links{display:flex;gap:28px;list-style:none;align-items:center;}
.nav-links a{font-size:13px;font-weight:400;color:var(--gris-texto);text-decoration:none;letter-spacing:.3px;transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--petroleo);}
.nav-cta{background:var(--grad)!important;color:#fff!important;padding:10px 22px!important;border-radius:100px!important;font-size:13px!important;font-weight:500!important;}
.nav-cta:hover{opacity:.9;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:10px;background:none;border:none;}
.hamburger span{width:22px;height:1.5px;background:var(--petroleo-oscuro);display:block;transition:transform .25s,opacity .2s;}
.hamburger.is-open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hamburger.is-open span:nth-child(2){opacity:0;}
.hamburger.is-open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

/* BOTONES */
.btn-primary{display:inline-block;background:var(--grad);color:#fff;padding:16px 36px;border-radius:100px;font-size:15px;font-weight:500;text-decoration:none;cursor:pointer;border:none;box-shadow:0 4px 20px rgba(26,95,122,.2);transition:transform .2s;}
.btn-primary:hover{transform:translateY(-2px);}
.btn-secondary{display:inline-block;border:1.5px solid var(--petroleo);color:var(--petroleo);padding:14px 32px;border-radius:100px;font-size:14px;text-decoration:none;background:transparent;transition:all .2s;}
.btn-secondary:hover{background:var(--petroleo);color:#fff;}

/* CABECERA DE PÁGINA */
.page-header{padding:140px 40px 60px;max-width:760px;margin:0 auto;text-align:center;}
.page-header .section-label{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--petroleo);margin-bottom:20px;font-weight:500;}
.page-header h1{font-family:'Cormorant Garamond',serif;font-size:clamp(34px,5vw,56px);font-weight:300;color:var(--petroleo-oscuro);line-height:1.15;margin-bottom:24px;}
.page-header>p{font-size:17px;color:var(--gris-texto);line-height:1.8;max-width:560px;margin:0 auto;}

.section{padding:40px 40px 100px;max-width:1100px;margin:0 auto;}
.section-label{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--petroleo);margin-bottom:20px;font-weight:500;}

/* GRID LISTA + TEXTO */
.enfoque-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:72px;align-items:start;margin-top:20px;}
.enfoque-lista{list-style:none;}
.enfoque-lista li{padding:30px 0 30px 24px;border-bottom:1px solid rgba(42,191,191,0.12);font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:300;color:var(--petroleo-oscuro);position:relative;}
.enfoque-lista li:first-child{padding-top:6px;}
.enfoque-lista li::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:1.5px;background:var(--grad);}
.enfoque-texto p{font-size:16px;line-height:1.9;color:var(--gris-texto);margin-bottom:24px;}

/* BLOQUE MÉTODO */
.box-metodo{margin-top:56px;padding:56px 60px;background:var(--gris-claro);border-radius:14px;text-align:center;}
.box-metodo h2{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:300;color:var(--petroleo-oscuro);margin-bottom:20px;max-width:580px;margin-left:auto;margin-right:auto;}
.box-metodo .p1{font-size:16px;color:var(--gris-texto);line-height:1.8;max-width:580px;margin:0 auto 24px;}
.box-metodo .p2{font-size:13px;color:var(--gris-texto);line-height:1.7;max-width:580px;margin:0 auto;font-style:italic;opacity:.85;}

/* FAQ */
.faq{max-width:760px;margin:0 auto;padding:20px 40px 100px;}
.faq h2{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:300;color:var(--petroleo-oscuro);text-align:center;margin-bottom:36px;}
.faq-item{border-bottom:1px solid rgba(42,191,191,.16);padding:22px 0;}
.faq-item h3{font-size:17px;font-weight:500;color:var(--petroleo-oscuro);margin-bottom:8px;}
.faq-item p{font-size:15px;line-height:1.75;color:var(--gris-texto);}

/* FOOTER */
footer{background:var(--petroleo-oscuro);padding:60px 40px;}
.footer-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;align-items:start;}
.footer-logo{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:300;color:#fff;margin-bottom:12px;}
.footer-logo span{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.footer-tagline{font-size:13px;color:rgba(255,255,255,.4);line-height:1.7;}
.footer-nav h4,.footer-cta h4{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--turquesa);margin-bottom:16px;}
.footer-nav ul{list-style:none;}.footer-nav ul li{margin-bottom:10px;}
.footer-nav ul li a{font-size:14px;color:rgba(255,255,255,.55);text-decoration:none;}
.footer-nav ul li a:hover{color:#fff;}
.footer-cta p{font-size:14px;color:rgba(255,255,255,.55);line-height:1.7;margin-bottom:20px;}
.footer-bottom{max-width:1100px;margin:40px auto 0;padding-top:24px;border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:space-between;align-items:center;}
.footer-bottom p{font-size:12px;color:rgba(255,255,255,.55);}
.footer-bottom a{color:rgba(255,255,255,.55);text-decoration:none;}

@media(max-width:800px){.enfoque-grid{grid-template-columns:1fr;gap:40px;}.box-metodo{padding:40px 24px;}}
@media(max-width:640px){nav{padding:0 20px;}
  .hamburger{display:flex;}
  .nav-links{display:none;position:fixed;top:68px;left:0;right:0;background:rgba(250,250,248,.99);flex-direction:column;gap:0;padding:8px 24px 22px;border-bottom:1px solid rgba(42,191,191,.14);box-shadow:0 12px 24px rgba(13,61,82,.08);}
  .nav-links.open{display:flex;}
  .nav-links li{width:100%;}
  .nav-links a{display:block;padding:13px 0;font-size:15px;border-bottom:1px solid rgba(42,191,191,.08);}
  .nav-links .nav-cta{display:inline-block;margin-top:12px;text-align:center;border-bottom:none;}
  .page-header{padding:110px 20px 40px;}.section{padding:20px 20px 60px;}.faq{padding:20px 20px 60px;}.footer-inner{grid-template-columns:1fr;gap:32px;}.footer-bottom{flex-direction:column;gap:10px;text-align:center;}}

/* PROGRAMA */
.section>h2{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:300;color:var(--petroleo-oscuro);line-height:1.2;}
.section-divider{width:40px;height:1px;background:var(--grad);margin:24px 0 40px;}
.trabajamos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:52px;}
.trabajamos-item{padding:36px 28px;background:var(--blanco);border-radius:12px;border-top:2px solid transparent;box-shadow:0 2px 14px rgba(13,61,82,.05);transition:border-color .3s,transform .2s,box-shadow .2s;}
.trabajamos-item:hover{border-top-color:var(--turquesa);transform:translateY(-3px);box-shadow:0 8px 24px rgba(13,61,82,.09);}
.trabajamos-item h3{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:400;color:var(--petroleo-oscuro);margin-bottom:10px;}
.trabajamos-item p{font-size:14px;color:var(--gris-texto);line-height:1.7;}
.fases{margin-top:80px;position:relative;}
.fases-titulo{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:300;color:var(--petroleo-oscuro);margin-bottom:48px;text-align:center;}
.fases-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;}
.fases-grid::before{content:'';position:absolute;top:28px;left:10%;right:10%;height:1px;background:linear-gradient(to right,var(--turquesa),var(--petroleo));}
.fase{text-align:center;padding:0 16px;position:relative;z-index:1;}
.fase h3{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:400;color:var(--petroleo-oscuro);margin-bottom:10px;}
.fase p{font-size:13px;color:var(--gris-texto);line-height:1.7;}
.fase-num{width:56px;height:56px;border:1.5px solid var(--turquesa);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;background:var(--blanco);font-family:'Cormorant Garamond',serif;font-size:20px;color:var(--petroleo);}
.precio-card{background:linear-gradient(135deg,#1A5F7A,#0D3D52);padding:52px;border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;margin-top:80px;}
.precio-grande{font-family:'Cormorant Garamond',serif;font-size:72px;font-weight:300;color:#FAFAF8;line-height:1;}
.precio-grande span{font-size:32px;vertical-align:super;}
.precio-sub{font-size:14px;color:rgba(255,255,255,0.78);margin-top:8px;}
.precio-fraccionado{margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,0.22);font-size:14px;color:rgba(255,255,255,0.85);}
.precio-fraccionado strong{color:#2ABFBF;font-size:16px;}
.prog-incluye{list-style:none;margin-bottom:32px;}
.prog-incluye li{font-size:14px;color:rgba(255,255,255,0.7);padding:10px 0 10px 18px;border-bottom:1px solid rgba(255,255,255,0.08);position:relative;}
.prog-incluye li::before{content:'→';position:absolute;left:0;color:var(--turquesa);font-size:12px;}

/* CONSULTA / VALORACIÓN */
.valoracion-card{max-width:680px;margin:0 auto;padding:64px;background:var(--gris-claro);border-radius:16px;text-align:center;border-top:3px solid var(--turquesa);}
.valoracion-card .v-precio{font-family:'Cormorant Garamond',serif;font-size:64px;font-weight:300;color:var(--petroleo-oscuro);line-height:1;margin:32px 0 8px;}
.valoracion-card .v-dur{font-size:14px;color:var(--gris-texto);margin-bottom:32px;}
.valoracion-card .v-nota{font-size:14px;color:var(--petroleo);margin-top:24px;padding-top:24px;border-top:1px solid rgba(42,191,191,0.2);}

@media(max-width:800px){.trabajamos-grid{grid-template-columns:1fr;}.fases-grid{grid-template-columns:1fr 1fr;gap:32px 0;}.fases-grid::before{display:none;}.precio-card{grid-template-columns:1fr;gap:32px;padding:40px 28px;}.valoracion-card{padding:40px 24px;}}

/* HERO (home) */
.hero{padding:130px 40px 90px;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 420px;gap:70px;align-items:center;}
.hero-tag{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--petroleo);margin-bottom:26px;font-weight:500;}
.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(38px,5vw,58px);font-weight:300;line-height:1.15;color:var(--petroleo-oscuro);margin-bottom:26px;letter-spacing:-.5px;}
.hero h1 em{font-style:italic;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}
.hero-sub{font-size:17px;line-height:1.8;color:var(--gris-texto);margin-bottom:38px;max-width:480px;}
.hero-btns{display:flex;gap:16px;flex-wrap:wrap;}
.hero-img-wrap{position:relative;aspect-ratio:4/5;border-radius:4px;background:var(--grad);}
.hero-img-wrap::before{content:'';position:absolute;top:-18px;left:-18px;width:100%;height:100%;background:var(--grad);border-radius:4px;opacity:.08;z-index:0;}
.hero-img{width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:4px;position:relative;z-index:1;}

/* BANDAS Y BLOQUES HOME */
.band{background:var(--gris-claro);}
.wrap{max-width:1100px;margin:0 auto;padding:80px 40px;}
.wrap-narrow{max-width:760px;margin:0 auto;padding:70px 40px;text-align:center;}
.home-h2{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3.5vw,38px);font-weight:300;color:var(--petroleo-oscuro);line-height:1.2;margin-bottom:16px;}
.home-lead{font-size:17px;line-height:1.8;color:var(--gris-texto);max-width:620px;margin:0 auto 8px;}
.home-quote{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:300;color:var(--petroleo-oscuro);line-height:1.4;max-width:620px;margin:28px auto 0;}
.home-quote em{font-style:normal;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;}

/* TESTIMONIOS */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px;}
.testi-card{background:var(--blanco);border:1px solid rgba(42,191,191,.16);border-radius:14px;padding:30px 28px;text-align:left;transition:transform .2s,box-shadow .2s;}
.testi-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(13,61,82,.07);}
.testi-card p{font-size:15px;line-height:1.7;color:var(--gris-texto);font-style:italic;margin-bottom:16px;}
.testi-card .testi-name{font-family:'Cormorant Garamond',serif;font-size:19px;color:var(--petroleo-oscuro);}
/* Banda azul (testimonios) */
.band-dark{background:linear-gradient(135deg,#1A5F7A,#0D3D52);}
.band-dark .section-label{color:var(--turquesa);}
.band-dark .home-h2{color:#fff;}
.testi-card.dark{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);}
.testi-card.dark p{color:rgba(255,255,255,.85);}
.testi-card.dark .testi-name{color:#fff;}
.testi-card.dark.placeholder{border-style:dashed;border-color:rgba(255,255,255,.55);}
.testi-card.dark.placeholder p{color:rgba(255,255,255,.5);font-style:normal;}

/* TEASERS ESPECIALIDAD */
.teaser{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;background:var(--gris-claro);border-radius:16px;padding:44px;margin-top:24px;}
.teaser h3{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:300;color:var(--petroleo-oscuro);margin-bottom:14px;line-height:1.25;}
.teaser p{font-size:15px;line-height:1.75;color:var(--gris-texto);margin-bottom:20px;}
.home-cta{background:linear-gradient(135deg,#1A5F7A,#0D3D52);border-radius:18px;padding:60px 40px;text-align:center;}
.home-cta h2{font-family:'Cormorant Garamond',serif;font-size:34px;font-weight:300;color:#fff;margin-bottom:24px;}
.home-cta .btn-primary{box-shadow:0 4px 20px rgba(0,0,0,.25);}

@media(max-width:800px){.hero{grid-template-columns:1fr;gap:40px;padding:110px 20px 60px;}.hero-img-wrap{max-width:340px;}.wrap{padding:56px 20px;}.wrap-narrow{padding:48px 20px;}.testi-grid{grid-template-columns:1fr;}.teaser{grid-template-columns:1fr;padding:32px 24px;}}

/* LEGAL */
.legal{max-width:760px;margin:0 auto;padding:20px 40px 100px;}
.legal h2{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:400;color:var(--petroleo-oscuro);margin:40px 0 14px;}
.legal p{font-size:15px;line-height:1.8;color:var(--gris-texto);margin-bottom:14px;}
.legal strong{color:var(--petroleo-oscuro);font-weight:500;}
.legal a{color:var(--petroleo);}
.legal .updated{font-size:13px;color:var(--gris-texto);font-style:italic;margin-top:32px;}
@media(max-width:640px){.legal{padding:20px 20px 60px;}}
