/* Ajustes visuales de la referencia; el contenido sigue siendo HTML accesible. */
:root{--container:1100px;--navy-strong:#082e59;--muted:#345477;--font:'Segoe UI',Inter,ui-sans-serif,system-ui,sans-serif}
.header-inner{min-height:62px}.main-nav{gap:27px}.brand-words strong{font-size:34px}.brand-words small{font-size:8px}.nav-link{font-size:.8rem}.header-cta{font-size:.75rem}
.section{padding:30px 0}.eyebrow{font-size:.65rem;font-weight:500;letter-spacing:0;padding:4px 12px}.section-heading{margin-bottom:18px}.section-heading h2{font-size:1.75rem;margin:9px 0 4px}.section-heading p{font-size:.95rem;line-height:1.35}
.hero{min-height:450px;padding:28px 0 40px;background:#f2fafc}.hero-layout{display:block;position:static}.hero-content{position:relative;z-index:3;width:46%;padding:0}.hero h1{font-size:2.55rem;line-height:1.06;margin:13px 0 10px;letter-spacing:-.035em}.hero-description{font-size:.95rem;line-height:1.35;margin-bottom:19px;max-width:445px}.hero-art{position:absolute;inset:0 0 0 44%;height:auto;z-index:1}.hero-art::before{display:none}.hero-image-wrap{inset:0;width:100%;height:100%;border-radius:0;box-shadow:none;mask-image:linear-gradient(to right,transparent,#000 19%)}.hero-image-wrap img{object-fit:cover;object-position:center}.hero-benefits{gap:20px;margin-top:21px}.hero-benefits li{font-size:.75rem}.btn-large{min-height:43px;padding:12px 21px;font-size:.85rem}.hero-curve{z-index:2;height:35px;clip-path:polygon(0 0,52% 0,75% 80%,86% 100%,94% 76%,100% 5%,100% 100%,0 100%)}
.service-grid{gap:18px}.service-card{padding:17px 22px;min-height:217px;border:0}.service-icon{margin-bottom:10px;height:43px}.service-card h3{font-size:1rem}.service-card p{font-size:.85rem;line-height:1.3;margin-bottom:14px}.service-link{font-size:.85rem}
.about-layout{grid-template-columns:.9fr 1.4fr;gap:35px;align-items:start}.about-copy h2{font-size:1.8rem;line-height:1.1;margin:12px 0}.about-copy p{font-size:.9rem;line-height:1.4}.about-copy .btn{font-size:.8rem}.about-note{display:none}.founders-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.person-photo{height:180px;border-radius:18px;margin-bottom:10px}.person-card h3{font-size:.92rem;letter-spacing:0}.person-role{font-size:.75rem!important}.person-card>p:last-child{font-size:.76rem;line-height:1.35}.sample-label{font-size:.55rem;padding:3px 5px}
.projects-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.project-image{height:125px}.project-body{padding:13px 34px 17px 15px;min-height:113px}.project-body h3{font-size:.9rem;margin:9px 0 5px;letter-spacing:0}.project-body p{font-size:.75rem;line-height:1.35}.category{font-size:.65rem;padding:3px 7px}.circle-link{width:25px;height:25px;right:10px;bottom:24px}.image-disclaimer{font-size:.55rem;padding:3px 5px}
.centered{text-align:left;max-width:none;margin-bottom:20px}.steps-grid{gap:25px}.step{padding:0 0 0 65px}.step-number{top:0;width:38px;height:38px}.step-icon{margin-bottom:10px}.step h3{font-size:.9rem;letter-spacing:0}.step p{font-size:.83rem;line-height:1.35}.step::before{top:17px;right:0;width:43%}
.testimonials-section{background:linear-gradient(110deg,#f3fafc,#edf7fa)}.testimonials-layout{display:grid;grid-template-columns:.9fr 1fr 1fr 1fr;gap:17px;align-items:center}.testimonials-layout h2{font-size:1.5rem;margin:10px 0}.demo-note{font-size:.7rem;color:var(--muted)}.testimonial-card{position:relative;background:#fff;border-radius:17px;padding:18px 16px 18px 43px;min-height:120px;box-shadow:0 8px 20px #123c5510}.quote-mark{position:absolute;left:14px;top:8px;color:#0098b0;font-size:45px;font-weight:bold}.testimonial-card p{font-size:.85rem;line-height:1.4;margin-bottom:10px}.testimonial-card small{font-size:.65rem;color:var(--muted)}
.faq-layout{gap:35px;grid-template-columns:.75fr 1.25fr}.faq-intro h2{font-size:1.65rem}.faq-intro p{font-size:.9rem}.faq-list{gap:8px}.faq-list summary{padding:12px 0;font-size:.84rem}.contact-panel{padding:32px;gap:30px}.contact-copy h2{font-size:2rem}.contact-section{padding-top:10px}.site-footer{padding-top:35px}
@media(min-width:921px) and (max-width:1140px){.container{width:81%}.header-inner{gap:16px}.main-nav{gap:20px}.brand-words strong{font-size:29px}.hero{min-height:340px;padding:25px 0 35px}.hero h1{font-size:2rem}.hero-description{font-size:.78rem}.hero-content{width:47%}.hero-benefits{gap:16px}.hero-benefits li{font-size:.62rem}.btn-large{font-size:.7rem;padding:10px 17px;min-height:35px}.service-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.service-card{padding:14px 18px;min-height:163px}.service-card h3{font-size:.83rem}.service-card p,.service-link{font-size:.7rem}.section-heading h2{font-size:1.35rem}.section-heading p{font-size:.8rem}.section{padding:16px 0}.about-copy h2{font-size:1.4rem}.about-copy p{font-size:.75rem}.person-photo{height:137px}.person-card h3{font-size:.72rem}.person-role{font-size:.65rem!important}.person-card>p:last-child{font-size:.62rem}.project-image{height:95px}.project-body{padding:10px 30px 12px 12px}.project-body h3{font-size:.7rem}.project-body p{font-size:.62rem}.projects-grid{gap:13px}.step h3{font-size:.72rem}.step p{font-size:.7rem}.testimonials-layout h2{font-size:1.2rem}}
@media(max-width:920px){.hero-layout{display:grid;grid-template-columns:1fr 1fr}.hero-content{width:auto}.hero h1{font-size:2.3rem}.hero-art{position:relative;inset:auto;height:380px}.hero-image-wrap{mask-image:none;border-radius:20px}.hero-description{font-size:.9rem}.about-layout{grid-template-columns:1fr}.founders-grid{max-width:none}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-image{height:185px}.testimonials-layout{grid-template-columns:1fr 1fr}.faq-layout{grid-template-columns:1fr}.hero-benefits{gap:10px}.section{padding:40px 0}}
@media(max-width:640px){.hero-layout{grid-template-columns:1fr;gap:22px}.hero h1{font-size:2.5rem}.hero-art{height:270px}.hero-image-wrap img{object-position:center}.hero-curve{display:none}.service-grid{grid-template-columns:1fr 1fr}.service-card{padding:18px 15px}.founders-grid{grid-template-columns:1fr 1fr}.person-photo{height:180px}.projects-grid{grid-template-columns:1fr}.project-image{height:190px}.project-body h3{font-size:1rem}.project-body p{font-size:.85rem}.testimonials-layout{grid-template-columns:1fr}.steps-grid{gap:18px}.step{padding-left:55px}.step::before{top:42px;width:0}.step-icon{display:none}.contact-panel{padding:25px 18px}.about-copy h2{font-size:1.9rem}.section-heading h2{font-size:1.65rem}.hero-content .eyebrow{font-size:.6rem}}

/* Los dos proyectos verificados del portfolio. */
@media(min-width:641px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-image{height:auto;aspect-ratio:2.12}.project-image img{height:100%;object-fit:contain}.project-body{min-height:135px}}

/* Montajes del equipo: encuadre cuadrado completo. */
.person-photo{height:auto;aspect-ratio:1;background:#faf8f4}.person-photo img{width:100%;height:100%;aspect-ratio:1;object-position:center;object-fit:cover}
.person-photo.peach{background:#fcf7f0}.person-photo.peach img{transform:none}

/* Pesos coherentes para la tipografía del sistema. */
h1,h2,h3{font-weight:700}.nav-link,.eyebrow,.hero-benefits li{font-weight:600}.btn,.text-link,.service-link,.category,.person-role,.faq-list summary,.contact-form label{font-weight:700}

/* Detalles decorativos de la maqueta y enlaces del equipo. */
.about-plant{position:absolute;top:16px;left:0;width:75px;height:145px;pointer-events:none}.about-handnote{position:absolute;top:58px;right:max(12px,calc((100% - 1350px)/2));width:105px;text-align:center;font-family:'Segoe Print','Comic Sans MS',cursive;font-size:.8rem;line-height:1.45;color:#082e59;transform:rotate(-7deg)}.about-handnote svg{width:58px;height:65px;margin:7px auto 0}.person-social{display:flex;margin-top:12px}.person-social a{display:grid;place-items:center;width:28px;height:28px;color:#075379;border-radius:5px}.person-social a:hover{background:#dceef1;color:#008b9c}.person-social .icon{width:18px;height:18px}.person-card>p:not(.person-role){font-size:.76rem;line-height:1.35;color:#50677b;margin:0}
@media(min-width:1141px){.about-layout{padding-right:75px;gap:28px}.about-handnote{right:max(10px,calc((100% - 1100px)/2 - 32px));width:92px}}
@media(max-width:920px){.about-plant{width:45px;height:100px;opacity:.6}.about-handnote{position:static;width:auto;margin:20px auto 0;transform:rotate(-3deg);font-size:.85rem}.about-handnote br{display:none}.about-handnote svg{height:40px}.about-layout{position:relative}.about-handnote{display:none}}

/* Formas de los márgenes tomadas del lenguaje visual de maqueta.png. */
.services-section,.projects-section,.how-section,.testimonials-section,.faq-section,.contact-section{position:relative;isolation:isolate;overflow:hidden}
.services-section>.container,.projects-section>.container,.how-section>.container,.testimonials-section>.container,.faq-section>.container,.contact-section>.container{position:relative;z-index:1}
.services-section::before{width:115px;height:115px;left:-40px;top:48px;border-radius:35% 65% 58% 42% / 45% 65% 35% 55%;background:#eaf7fa;transform:rotate(-28deg)}
.section-ornament{position:absolute;pointer-events:none;z-index:0}.services-ornament{right:-13px;top:43px;width:105px;height:220px}
.about-section::before{width:128px;height:66px;left:-43px;bottom:15px;background:#207f97;border-radius:48% 55% 35% 45%;transform:rotate(44deg)}
.projects-section::before{width:130px;height:215px;left:-62px;top:100px;bottom:auto;border-radius:35% 65% 50% 42% / 30% 42% 58% 70%;background:#ecf8fc;transform:rotate(-22deg)}
.how-section::after{content:"";position:absolute;right:-42px;top:0;width:135px;height:185px;border-radius:60% 35% 50% 35% / 20% 65% 35% 70%;background:#eaf7fa;transform:rotate(-25deg);z-index:0;pointer-events:none}
.faq-section::before{content:"";position:absolute;width:105px;height:160px;left:-48px;bottom:-50px;border-radius:60% 40% 55% 35%;background:#e3f3f6;transform:rotate(-25deg);pointer-events:none}
.contact-section::after{content:"";position:absolute;width:105px;height:175px;right:-25px;top:0;border-radius:60% 40% 70% 30%;background:#e0f2f6;transform:rotate(30deg);z-index:0;pointer-events:none}
.hero-lines{left:-126px;width:175px;height:290px;border-radius:50%;opacity:.65;transform:rotate(-25deg);box-shadow:8px 0 0 -7px #92d9e5,16px 0 0 -15px #92d9e5,24px 0 0 -23px #92d9e5,32px 0 0 -31px #92d9e5}
.nav-link[href="#inicio"]{color:#08738d;text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px}
.service-icon{filter:drop-shadow(2px 2px 0 #a8e2e8)}.service-icon .icon{stroke-width:1.9}
.step-number{background:linear-gradient(135deg,#04a9c2,#078db0);box-shadow:inset -4px -2px 0 #087c9e22}.step-icon .icon{stroke-width:2.3}.step::before{border-top:2px dotted #29bbd4}
.contact-panel{background:linear-gradient(115deg,#058397,#009aae)}.contact-panel::before{background:#4acbd02e}.contact-panel::after{background:#80dfe21c}
@media(max-width:920px){.services-section::before,.projects-section::before,.how-section::after,.faq-section::before,.contact-section::after{opacity:.55;width:65px}.services-ornament{width:55px;right:-18px}.about-section::before{width:75px;left:-40px;bottom:8px}}
@media(max-width:640px){.hero-lines{height:170px;width:140px;left:-115px}.services-ornament{opacity:.5}.step::before{border-top:0;border-left:2px dotted #29bbd4}}

/* Acentos tecnológicos para la sección del equipo. */
.about-tech{position:absolute;left:0;top:18px;width:78px;height:155px;opacity:.75;pointer-events:none}.about-section::before{width:85px;height:85px;left:-36px;bottom:18px;background:transparent;border:1px solid #5baabb55;border-radius:17px;transform:rotate(45deg);box-shadow:12px -12px 0 -1px #fff5ee,12px -12px 0 0 #5baabb33}.about-section::after{content:"";position:absolute;left:14px;bottom:48px;width:5px;height:5px;border-radius:50%;background:#2998ad;box-shadow:14px 14px #2998ad66,28px 0 #2998ad33;pointer-events:none}
@media(max-width:920px){.about-tech{width:40px;height:110px;opacity:.35}.about-section::before{left:-58px;opacity:.6}}

/* Franja horizontal de testimonios como en la referencia. */
.testimonials-section{padding:20px 0;background:linear-gradient(100deg,#f3fafc,#edf8fb 55%,#f7fcfd)}.testimonials-layout{grid-template-columns:230px minmax(0,1fr);gap:30px;align-items:center}.testimonials-intro h2{font-size:1.55rem;line-height:1.15;margin:11px 0 7px}.testimonials-intro .eyebrow{font-size:.58rem;white-space:nowrap}.testimonials-intro .demo-note{font-size:.62rem;line-height:1.35;margin:0}.testimonials-carousel{position:relative;min-width:0}.testimonials-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 2px 10px}.testimonials-track::-webkit-scrollbar{display:none}.testimonials-track .testimonial-card{flex:0 0 calc((100% - 32px)/3);min-width:0;min-height:136px;scroll-snap-align:start;padding:18px 13px 13px 42px;border-radius:16px;box-shadow:0 5px 12px #123c5509}.testimonial-card .quote-mark{left:15px;top:6px;font-size:48px;color:#029bb8}.testimonial-card>p{font-size:.77rem;line-height:1.35;min-height:60px;margin:0 0 12px}.testimonial-person{display:flex;gap:8px;align-items:center;margin-left:-24px;flex-wrap:wrap}.testimonial-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:.6rem;font-weight:700;color:#35566c;flex:none}.avatar-peach{background:#f6dfcf}.avatar-blue{background:#d1e8ee}.avatar-rose{background:#eedbda}.testimonial-person b{display:block;font-size:.72rem;line-height:1.25}.testimonial-person small{display:block;font-size:.58rem;line-height:1.3;color:#476381}.testimonial-stars{margin-left:auto;color:#ffad2e;font-size:.8rem;letter-spacing:1px;white-space:nowrap}.testimonial-nav{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:27px;height:27px;border:1px solid #a8dce7;background:#fff;border-radius:50%;color:#0097b0;z-index:2;padding:5px}.testimonial-nav:hover{background:#e2f7fa}.testimonial-nav .icon{width:15px;height:15px}.testimonial-prev{left:-31px}.testimonial-prev .icon{transform:rotate(180deg)}.testimonial-next{right:-31px}
@media(min-width:921px) and (max-width:1140px){.testimonials-section .container{width:90%}.testimonials-layout{grid-template-columns:185px minmax(0,1fr);gap:25px}.testimonials-intro h2{font-size:1.25rem}.testimonials-track{gap:12px}.testimonials-track .testimonial-card{flex-basis:calc((100% - 24px)/3);padding-left:36px}.testimonial-card>p{font-size:.67rem}.testimonial-person b{font-size:.64rem}.testimonial-person small{font-size:.54rem}.testimonial-stars{font-size:.68rem}.testimonial-prev{left:-26px}.testimonial-next{right:-25px}}
@media(max-width:920px){.testimonials-layout{grid-template-columns:1fr;gap:14px}.testimonials-intro h2 br{display:none}.testimonials-carousel{margin:0 25px}.testimonials-track .testimonial-card{flex-basis:calc((100% - 16px)/2);min-height:145px}.testimonial-card>p{font-size:.82rem}.testimonial-person b{font-size:.76rem}.testimonial-person small{font-size:.63rem}}
@media(max-width:640px){.testimonials-track .testimonial-card{flex-basis:100%;padding:20px 18px 18px 46px}.testimonial-card>p{min-height:0}.testimonial-stars{font-size:.9rem}}

/* Comillas vectoriales: forma legible independiente de la tipografía. */
.testimonial-card .quote-mark{position:absolute;left:13px;top:19px;width:23px;height:20px;color:#029bb8}
@media(min-width:921px) and (max-width:1140px){.testimonial-card .quote-mark{left:11px;width:20px;height:18px}}

/* Logos de Nazjor para la cabecera y el pie de página. */
.brand{--wordmark-width:155px;align-items:center}.brand-wordmark{width:var(--wordmark-width);height:auto;display:block}.footer-brand{--wordmark-width:145px;background:transparent;padding:0;width:fit-content}
@media(max-width:640px){.brand{--wordmark-width:120px}.footer-brand{--wordmark-width:145px}}

/* Proporciones anteriores con un peso ligeramente mayor. */
.hero-description{font-size:1.125rem;line-height:1.6}
.about-copy p{font-size:1rem;line-height:1.6}
body{font-weight:500}
h1,h2,h3{font-weight:750}
.nav-link,.eyebrow,.hero-benefits li{font-weight:650}

/* Tarjetas del equipo con textos alineados y enlaces en la base. */
.founders-grid{align-items:stretch}
.person-card{display:flex;flex-direction:column}
.person-card .person-photo{flex-shrink:0}
.person-card h3{line-height:1.3;margin-bottom:4px}
.person-card .person-role{line-height:1.4;margin-bottom:8px!important}
.person-card>p:not(.person-role){flex:1}
.person-card .person-social{margin-top:10px}
.person-social a{width:36px;height:36px;border-radius:50%;border:1px solid #a9dce6;background:#eef8fb;color:#075379;transition:background-color .2s,border-color .2s,color .2s}
.person-social a:hover{background:#075379;border-color:#075379;color:#fff}

/* Espacio interior de la barra de navegación fija. */
.site-header{box-shadow:0 4px 18px rgba(16,44,70,.12)}
.header-inner{padding-block:10px}
@media(max-width:640px){.header-inner{padding-block:8px}}

/* En móvil, el mensaje ocupa la cuarta tarjeta junto a Moisés. */
@media(max-width:640px){
  .founders-grid>.about-handnote{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    position:static;width:100%;margin:0;padding:18px 10px;
    border:0;background:transparent;
    font-size:clamp(.85rem,3.5vw,1rem);font-weight:700;line-height:1.6;
    transform:translateY(-40px);align-self:stretch
  }
  .founders-grid>.about-handnote br{display:block}
  .founders-grid>.about-handnote svg{width:48px;height:48px;margin-top:12px}
}

/* Imagen específica del banner para móvil, sin recortar su contenido. */
.hero-image-wrap picture{display:block;width:100%;height:100%}
@media(min-width:641px) and (max-width:920px){
  .hero-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px;align-items:center}
  .hero-content{width:100%;max-width:none;margin:0}
  .hero-art{position:relative;inset:auto;width:100%;max-width:none;height:auto;aspect-ratio:916/1717;margin:0}
  .hero-image-wrap{position:absolute;inset:0;width:100%;height:100%;mask-image:none;border-radius:18px}
  .hero-image-wrap img{width:100%;height:100%;object-fit:contain;object-position:center}
}
@media(max-width:640px){
  .hero{padding-bottom:0;min-height:0}
  .hero-layout{grid-template-columns:1fr;gap:24px}
  .hero-art{position:relative;inset:auto;width:calc(100% + 32px);max-width:none;height:auto;aspect-ratio:916/1717;margin-inline:-16px}
  .hero-image-wrap{position:absolute;inset:0;width:100%;height:100%;mask-image:none;border-radius:0;overflow:visible}
  .hero-image-wrap picture{height:100%}
  .hero-image-wrap img{width:100%;height:100%;object-fit:contain;object-position:center}
}
