@font-face{font-family:'Lobster';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/lobster-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Courier Prime';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/courier-prime-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Courier Prime';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/courier-prime-latin-400-italic.woff2') format('woff2')}
@font-face{font-family:'Courier Prime';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/courier-prime-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Courier Prime';font-style:italic;font-weight:700;font-display:swap;src:url('fonts/courier-prime-latin-700-italic.woff2') format('woff2')}
/* (R)evoluciona · Refinamiento visual. Fuentes, paleta y contenidos conservados. */
:root{--gris:#ccd7e4;--antracita:#828a95;--columbia:#ceeaf7;--snow:#fdf7f6;--raisin:#191923;--cta-red:#c0392b;--cta-red-dark:#a93226;--cta:#c62828;--maxw:1180px;--gutter:clamp(20px,4vw,48px);--card-pad:clamp(24px,3vw,36px)}
*{box-sizing:border-box}html{scroll-padding-top:110px}body{margin:0;font-family:'Courier Prime',monospace;font-size:16px;line-height:1.65;background:var(--snow);color:var(--raisin);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}figure{margin:0}p{margin:0 0 16px}p:last-child{margin-bottom:0}h1,h2,h3,h4{font-family:'Lobster',cursive;font-weight:400;line-height:1.2;margin:0 0 22px;text-wrap:balance}h1{font-size:clamp(38px,4.4vw,60px)}h2,.title{font-size:clamp(29px,3.2vw,39px)}h3{font-size:27px}h4{font-size:25px}strong{font-weight:700}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}.section{padding:64px 0;text-align:center}.lead{font-size:17px;line-height:1.75;max-width:860px;margin:0 auto 16px}.lead:last-child{margin-bottom:0}a:focus-visible{outline:3px solid var(--raisin);outline-offset:5px;border-radius:4px}
.header{position:sticky;top:0;background:rgba(253,247,246,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--gris);z-index:20}.header .wrap{max-width:var(--maxw);margin:auto;padding:14px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:22px}.header .wrap>div{display:flex;align-items:center;gap:12px}.header .logo{height:44px;width:auto;object-fit:contain}.header nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.header nav a{padding:7px 0;border-bottom:1px solid transparent;white-space:nowrap}.header nav a:hover{border-bottom-color:var(--raisin)}
.hero{padding:32px 0 0;background:linear-gradient(180deg,var(--gris),var(--columbia));border-radius:0 0 24px 24px;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.05fr 1fr;align-items:stretch;gap:44px}.hero-copy{padding:40px 0 48px;text-align:left;align-self:center}.hero-copy p{max-width:100%;margin:0 0 18px;font-size:17px;line-height:1.65}.home .hero-copy>p:first-of-type{font-size:23px;line-height:1.5;margin-top:24px}.hero-copy .lead{text-align:left;font-size:15px}.hero-copy .btn-primary{margin:6px 0 24px}.hero-copy .btn-primary+p{font-size:15px}.hero-copy .lead:last-child{margin:0}.hospitality-image{min-width:0;min-height:420px;overflow:hidden;border-radius:120px 12px 0 0}.hospitality-image img{width:100%;height:100%;object-fit:cover;object-position:68% center}.btn-primary,.contact-card,.cta{display:inline-block;max-width:100%;padding:14px 24px;background:var(--cta-red);color:#fff;font-weight:700;font-size:15px;line-height:1.5;border:1px solid transparent;border-radius:12px;box-shadow:0 6px 18px rgba(192,57,43,.12);transition:background .2s,box-shadow .2s}.btn-primary:hover,.contact-card:hover,.cta:hover{background:var(--cta-red-dark);box-shadow:0 8px 22px rgba(192,57,43,.18)}.cta{background:var(--cta);border-radius:999px;margin-top:24px}.cta.secondary{background:transparent;color:var(--cta);border-color:var(--cta);box-shadow:none}.cta.secondary:hover{background:#fff}
.proposal{padding:64px 0 32px}.proposal>.container{display:grid;grid-template-columns:1fr 1fr;gap:32px 56px;text-align:left}.proposal .lead{text-align:left;font-size:16px}.proposal-intro>p:first-child strong{display:block;font-family:'Lobster',cursive;font-size:29px;line-height:1.3;font-weight:400;margin-bottom:16px}.proposal-message{border-left:1px solid var(--gris);padding-left:36px}.proposal-message>p:first-child{font-size:18px}.brand-motto{grid-column:1/-1;border-top:1px solid var(--gris);border-bottom:1px solid var(--gris);padding:22px 0;margin:4px 0 0;text-align:center;font-family:'Lobster',cursive;font-size:28px}.brand-motto strong{font-weight:400}
.section-intro{display:grid;grid-template-columns:1fr 1.3fr;gap:48px;text-align:left;align-items:start;margin-bottom:26px}.section-intro h2{margin-top:5px}.intro-copy .lead{text-align:left;font-size:16px;margin-bottom:8px}.diagnostic-start{margin:26px 0 36px;text-align:center;font-size:16px;font-weight:700}.diagnostic-start a{display:inline-block;padding:14px 22px;background:var(--columbia);border:1px solid var(--gris);border-radius:12px;text-decoration:underline;text-underline-offset:5px;max-width:100%}.diagnostic-start a:hover{background:var(--gris)}
.grid,.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:26px;align-items:stretch}.card{min-width:0;padding:var(--card-pad);border:1px solid rgba(130,138,149,.25);border-radius:16px;background:#fff;text-align:left;box-shadow:0 9px 24px rgba(25,25,35,.035);overflow-wrap:anywhere}.card p,.card .lead{font-size:16px;line-height:1.75;text-align:left;margin:0 0 18px;max-width:none}.card p:last-child,.card .lead:last-child{margin-bottom:0}.card>strong{display:block;margin:0 0 14px;line-height:1.5}.card h4{margin:0 0 22px}.card>*{max-width:100%}.card>:first-child{margin-top:0}.card>:last-child{margin-bottom:0}
#servicios .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{display:flex;flex-direction:column;border-top:3px solid var(--columbia)}.service-number{font-family:'Courier Prime',monospace;color:var(--antracita);font-size:19px;margin-right:8px}.service-card p.service-benefits{margin-top:auto;padding-top:18px;border-top:1px solid var(--gris);font-size:15px}.service-card .lead:not(.service-benefits){margin-bottom:24px}#servicios .grid+div{margin-top:30px}
.method{background:linear-gradient(180deg,rgba(206,234,247,.4),rgba(204,215,228,.14))}.method-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}.method-copy{text-align:left}.method-copy .lead{text-align:left;font-size:16px}.process-card{margin:0;box-shadow:none}.process-card>p:first-child{margin-bottom:24px}.process-card>p:not(:first-child){position:relative;padding:18px 0 18px 44px;margin:0;border-top:1px solid var(--gris);font-size:15px}.process-card>p:last-child{padding-bottom:0}.step-number{position:absolute;left:0;top:18px;width:28px;height:28px;border-radius:50%;background:var(--columbia);text-align:center;font-size:14px;font-weight:700;line-height:28px}
.who{display:grid;grid-template-columns:.7fr 1.3fr;gap:56px;align-items:start}.portrait-frame{position:sticky;top:110px;padding:12px;background:var(--gris);border-radius:18px 90px 18px 18px;overflow:hidden}.portrait-frame img{width:100%;height:auto;border-radius:10px 80px 10px 10px}.who-copy{text-align:left;min-width:0}.who-copy .lead{text-align:left;font-size:16px;margin-bottom:16px}.who-copy .lead:last-child{margin:0}#valores{padding-top:24px}#valores .lead{font-size:16px}.values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;margin-top:32px;text-align:left}.value-pill{padding:20px 4px 20px 0;border-top:1px solid var(--gris);font-size:15px;font-weight:700;line-height:1.6;min-width:0}
.results-start{background:linear-gradient(180deg,rgba(206,234,247,.45),rgba(206,234,247,.12));padding-bottom:26px}.results-start>.container>.lead{font-size:16px}.results-start .card{box-shadow:none}.results-start .card p{font-size:15px}.results-end{padding-top:26px;background:rgba(206,234,247,.12)}.expanded-results{display:grid;grid-template-columns:1fr 1fr;gap:24px 48px;text-align:left}.expanded-results>h2{grid-column:1/-1;text-align:center}.expanded-results .lead{text-align:left;font-size:16px;margin-bottom:18px}.results-close .grid{display:block;margin:0 0 28px}.results-close .card{background:var(--columbia);box-shadow:none}.results-close>.lead{padding-left:8px}.results-copy{padding:6px 0}.testimonials .grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.testimonials .card:last-child{grid-column:1/-1}.testimonial{font-style:italic}.testimonials .card{border-top:3px solid var(--gris)}.testimonials .card p:last-child{font-size:14px;padding-top:18px;border-top:1px solid var(--gris)}
#contacto{padding:24px var(--gutter) 48px}.contact-panel{padding:48px;background:linear-gradient(125deg,var(--gris),var(--columbia));border-radius:22px}.contact-panel>.lead{font-size:16px;max-width:820px}.contact-panel>p:nth-last-child(2){margin:24px 0}.contact-panel a[href^='mailto:']:not(.contact-card){overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.footer{padding:28px var(--gutter);text-align:center;color:var(--antracita);font-size:13px}.footer .container{padding:0}.footer p{margin:0}
/* Página de servicios: mismas fuentes y colores originales. */
.services-page .service-hero{padding:32px 0 0;background:linear-gradient(180deg,var(--gris),var(--columbia));border-radius:0 0 24px 24px;overflow:hidden}.services-page .hero-copy h1{font-size:clamp(36px,4vw,52px)}.services-page .hero-copy p{font-size:16px}.services-page .hero-copy .highlight{font-size:20px}.services-page .hero-copy .cta{margin-top:8px}.services-page main>.section:not(:first-child)>.container>p{max-width:850px;margin:0 auto 18px}.services-page .alt{background:linear-gradient(180deg,rgba(204,215,228,.45),transparent)}.services-page .card-grid{margin:30px 0}.services-page .card p{margin-bottom:0}.services-page .cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}.services-page .cards-5{grid-template-columns:repeat(6,minmax(0,1fr))}.services-page .cards-5 .card{grid-column:span 2}.services-page .cards-5 .card:nth-last-child(-n+2){grid-column:span 3}.highlight{font-weight:700}
@media(max-width:1000px){.header .wrap{gap:14px}.header nav{gap:14px;font-size:13px}.hero-layout{gap:28px;grid-template-columns:1fr 1fr}.hero-copy{padding:24px 0 36px}.home .hero-copy>p:first-of-type{font-size:21px}.hospitality-image{min-height:440px;border-top-left-radius:80px}.who{gap:32px}.method-layout{gap:28px}.grid{gap:18px}.results-start .grid{grid-template-columns:1fr}.results-start .card{display:grid;grid-template-columns:1fr 2fr;gap:24px}.results-start .card>strong{margin:0}.results-start .card>p{margin:0}}
@media(max-width:760px){html{scroll-padding-top:135px}.header .wrap{flex-direction:column;gap:6px;padding:10px 20px}.header .logo{height:32px;width:auto}.header .wrap>div{gap:8px}.header nav{flex-wrap:wrap;justify-content:center;gap:0 16px;font-size:13px}.header nav a{padding:4px 0}.hero,.services-page .service-hero{padding-top:12px}.hero-layout{grid-template-columns:1fr;gap:0}.hero-copy{padding:28px 0 30px}.hero-copy h1{font-size:44px}.hospitality-image{height:300px;min-height:0;border-radius:60px 12px 0 0}.hospitality-image img{object-position:center 47%}.home .hero-copy>p:first-of-type{font-size:21px;margin-top:18px}.hero-copy .lead{font-size:14px}.section{padding:44px 0}.proposal>.container,.section-intro,.method-layout,.expanded-results{grid-template-columns:1fr;gap:24px}.proposal-message{padding:0;border:0}.brand-motto{font-size:25px}.section-intro h2{margin:0}.section-intro{margin-bottom:20px}.lead{font-size:16px}.diagnostic-start{margin:22px 0 28px}.diagnostic-start a{padding:13px 16px;font-size:15px}.grid,#servicios .grid,.card-grid,.testimonials .grid,.services-page .cards-4,.services-page .cards-5{grid-template-columns:1fr;gap:18px}.services-page .cards-5 .card,.services-page .cards-5 .card:nth-last-child(-n+2){grid-column:auto}.testimonials .card:last-child{grid-column:auto}.card{padding:24px}.card h4{font-size:24px}.card p,.card .lead{font-size:16px}.method-layout{gap:26px}.who{grid-template-columns:minmax(0,1fr);gap:28px}.portrait-frame{position:static;max-width:290px;margin:0 auto;width:100%}.who-copy .title{text-align:center}.values{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.value-pill{font-size:14px}.results-start .card{display:block}.results-start .card>strong{margin-bottom:14px}.results-start{padding-bottom:20px}.results-end{padding-top:20px}.expanded-results>h2{grid-column:auto}.expanded-results .lead{font-size:16px}.results-close>.lead{padding:0}#contacto{padding:8px 20px 32px}.contact-panel{padding:30px 22px}.footer{padding:24px 20px}.services-page .card-grid{margin:24px 0}.services-page .hero-copy h1{font-size:39px}.services-page .hero-copy p{overflow-wrap:anywhere}.services-page .section .container>p{font-size:16px}}
@media(max-width:360px){.header nav{gap:0 10px;font-size:12px}.hero-copy h1{font-size:38px}.hospitality-image{height:250px}.values{grid-template-columns:1fr}.card{padding:22px}.btn-primary,.contact-card,.cta{padding:13px 18px;font-size:14px}.hero-copy p{font-size:16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Tercera revisión: logotipo oficial, valores destacados y nuevas escenas editoriales. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.brand-heading{margin-bottom:28px;line-height:1}.brand-heading img{width:100%;max-width:430px;height:auto}
.section-intro{display:block;text-align:center;margin-bottom:28px}.section-intro h2{margin:0 0 24px}.intro-copy{max-width:800px;margin:0 auto}.intro-copy .lead{text-align:center;margin-bottom:10px}
.editorial-image{width:100%;overflow:hidden;border-radius:16px;background:var(--gris)}.editorial-image img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.method-copy .editorial-image{margin-top:28px}
#valores{padding:56px 0;background:linear-gradient(135deg,rgba(204,215,228,.55),rgba(206,234,247,.45))}#valores .title{margin-bottom:32px}.values-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.values-copy .lead{text-align:left;margin-bottom:18px;font-size:16px}.values-copy .lead:last-child{margin-bottom:0}.values{gap:18px;margin-top:32px}.value-pill{position:relative;display:flex;align-items:center;padding:28px 24px 28px 38px;background:var(--snow);border:1px solid rgba(130,138,149,.25);border-radius:14px;box-shadow:0 8px 22px rgba(25,25,35,.04);font-size:16px;line-height:1.6;min-height:108px}.value-pill::before{content:'';position:absolute;left:20px;top:28px;bottom:28px;width:3px;background:var(--antracita);border-radius:3px}.value-pill:nth-child(3n+2){background:#fff}.value-pill:nth-child(3n+3){background:var(--columbia)}
.solution-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;margin:30px 0}.solution-intro>p{text-align:left;margin:0;font-size:18px;line-height:1.8}
@media(max-width:1000px){.values-intro{gap:28px}.value-pill{padding:24px 20px 24px 34px;font-size:15px}.value-pill::before{left:17px;top:24px;bottom:24px}.solution-intro{gap:28px}}
@media(max-width:760px){.brand-heading{margin-bottom:24px}.brand-heading img{max-width:360px}.section-intro h2{margin-bottom:20px}.intro-copy .lead{text-align:center}.values-intro,.solution-intro{grid-template-columns:1fr;gap:24px}.values{grid-template-columns:1fr;gap:14px;margin-top:28px}.value-pill{min-height:0;padding:24px 24px 24px 40px;font-size:16px}.value-pill::before{left:21px;top:24px;bottom:24px}#valores{padding:42px 0}.values-copy .lead{text-align:left}.solution-intro>p{font-size:17px}.method-copy .editorial-image{margin-top:24px}}

/* Logotipo corporativo en todas las menciones visibles de la marca. */
.brand-inline{display:inline-block;vertical-align:-.25em;width:6.4em;max-width:100%;line-height:0;white-space:nowrap}.brand-inline>img{display:block;width:100%;height:auto}.brand-inline .sr-only{line-height:1}
h1 .brand-inline,h2 .brand-inline,h3 .brand-inline,.proposal-intro>p:first-child strong .brand-inline{width:5.3em;vertical-align:-.2em}
.services-page .hero-copy h1 .brand-inline{display:block;width:100%;max-width:400px;margin-top:18px}
.header .brand-inline{width:132px;vertical-align:middle}.footer .brand-inline{width:100px;vertical-align:-.3em}
@media(max-width:760px){.header .brand-inline{width:126px}.services-page .hero-copy h1 .brand-inline{max-width:350px}}
