/* Multipage foundation. The approved home/planet styles remain in styles.css. */
.home-about-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(40px,8vw,130px);align-items:start}
.home-about-grid h2{font-size:clamp(2.4rem,5vw,4.8rem);line-height:1.05;max-width:680px}
.home-about-grid p{color:#c6c5d2;font-size:1.08rem;line-height:1.8;margin:0 0 30px}
.home-section-action{margin:42px 0 0}
.inner-page{background:#08090f;color:#f5f5f7;min-height:100svh}
.inner-page .site-header{background:#000}
.inner-page .nav-links [aria-current="page"]{color:#fff;font-weight:600}
.inner-page .nav-links [aria-current="page"]::after{content:"";display:block;height:2px;background:#aa79ff;margin-top:1px}
.inner-page main{overflow:hidden}
.inner-page .inner-hero{padding-top:clamp(145px,14vw,230px);padding-bottom:clamp(95px,10vw,155px);min-height:min(750px,90svh);display:flex;flex-direction:column;justify-content:center}
.inner-kicker{display:block;color:#a88be9;font-size:.75rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase}
.inner-hero h1{max-width:1050px;font-size:clamp(3.2rem,7.5vw,7rem);line-height:1.02;letter-spacing:-.07em;margin:25px 0 28px}
.inner-hero>p{color:#a9a9b4;font-size:clamp(1.05rem,1.8vw,1.42rem);line-height:1.65;max-width:720px;margin:0}
.inner-hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:42px}
.inner-page .button{background:#7930d7;color:#fff;box-shadow:0 12px 35px #7125c83d}
.inner-page .button:hover{background:#8c43e9}
.inner-section{padding-top:clamp(82px,10vw,150px);padding-bottom:clamp(82px,10vw,150px);border-top:1px solid #ffffff1c}
.inner-section h2,.inner-cta h2{font-size:clamp(2.1rem,4vw,4.5rem);line-height:1.12;letter-spacing:-.055em}
.inner-section h3{font-size:clamp(1.25rem,2vw,1.9rem);line-height:1.25}
.inner-section p{color:#b7b7c3;line-height:1.8}
.inner-heading{margin-bottom:52px;max-width:850px}
.inner-heading h2{margin-top:20px}
.inner-card-grid{display:grid;gap:22px}
.inner-card-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.inner-card-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.inner-card{min-height:320px;padding:34px 32px;background:#12141e;border:1px solid #ffffff17;border-radius:22px;display:flex;flex-direction:column}
.inner-card h3{margin:35px 0 16px}
.inner-card p{margin:0;font-size:.96rem}
.inner-card .inner-result{margin-top:auto;padding-top:20px;color:#d3c1ff}
.inner-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,8vw,130px);align-items:start}
.inner-split p{font-size:clamp(1.08rem,1.6vw,1.3rem);line-height:1.75;margin:0 0 24px}
.inner-list>div{display:grid;grid-template-columns:70px minmax(220px,1fr) 1.4fr;gap:28px;align-items:start;padding:28px 0;border-top:1px solid #ffffff2b}
.inner-list>div:last-child{border-bottom:1px solid #ffffff2b}
.inner-list span,.inner-phases article>span,.inner-number-grid span{color:#a88be9;font-size:.8rem;font-weight:600}
.inner-list p{margin:0}
.inner-duo{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.inner-duo article{background:#11131d;border-radius:22px;padding:clamp(30px,4vw,55px);min-height:320px}
.inner-duo h2{font-size:clamp(2rem,3vw,3rem);margin:25px 0}
.inner-quote-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.inner-quote-grid p{background:#11131d;border:1px solid #ffffff16;border-radius:18px;padding:30px;font-size:1.16rem;margin:0;color:#eeeef3}
.inner-service{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:55px 0;border-top:1px solid #ffffff28;scroll-margin-top:80px}
.inner-service:last-child{border-bottom:1px solid #ffffff28}
.inner-service h3{font-size:clamp(1.9rem,3vw,3rem);max-width:650px;margin:0 0 18px}
.inner-service p{max-width:700px;font-size:1.05rem;margin:0 0 22px}
.inner-service strong{font-weight:500;color:#c5a4ff}
.inner-number-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 40px}
.inner-number-grid p{display:flex;gap:24px;border-top:1px solid #ffffff28;padding:25px 0;margin:0;font-size:1.1rem}
.inner-steps{border-top:1px solid #ffffff28}
.inner-steps article{display:grid;grid-template-columns:100px 1fr;gap:25px;padding:37px 0;border-bottom:1px solid #ffffff28}
.inner-letter{font-size:4rem;font-weight:600;line-height:1;color:#9e6bec}
.inner-steps h3{margin:8px 0 12px}
.inner-steps p{margin:0}
.inner-phases{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.inner-phases article{padding:25px;background:#12141e;border-radius:18px;min-height:210px}
.inner-phases h3{margin:30px 0 12px}
.inner-phases p{margin:0}
.inner-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.inner-contact-grid>div{background:#12141e;border-radius:20px;padding:35px;min-height:170px}
.inner-contact-grid a{display:block;margin-top:25px;font-size:clamp(1.15rem,2vw,1.65rem);overflow-wrap:anywhere}
.inner-contact-grid a:hover{color:#bd92ff}
.inner-faq{border-top:1px solid #ffffff2a}
.inner-faq details{border-bottom:1px solid #ffffff2a}
.inner-faq summary{cursor:pointer;list-style:none;padding:27px 45px 27px 0;font-size:1.15rem;position:relative}
.inner-faq summary::-webkit-details-marker{display:none}
.inner-faq summary::after{content:"+";position:absolute;right:10px;font-size:1.6rem;top:19px;color:#af85ed}
.inner-faq details[open] summary::after{content:"−"}
.inner-faq details p{max-width:760px;margin:0 0 30px}
.inner-cta{padding-top:110px;padding-bottom:130px;border-top:1px solid #ffffff1c}
.inner-cta h2{max-width:780px;margin:22px 0 32px}
.inner-page footer{background:#05060a}
@media(max-width:900px){.inner-card-grid.three{grid-template-columns:1fr 1fr}.inner-list>div{grid-template-columns:45px 1fr;gap:12px 20px}.inner-list p{grid-column:2}.inner-phases{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.home-about-grid,.inner-split,.inner-duo,.inner-quote-grid,.inner-contact-grid,.inner-card-grid.three,.inner-card-grid.two{grid-template-columns:1fr}.inner-page .inner-hero{min-height:610px;padding-top:135px;padding-bottom:80px}.inner-hero h1{font-size:clamp(3rem,13vw,5.6rem)}.inner-card{min-height:270px}.inner-section{padding-top:78px;padding-bottom:78px}.inner-service{grid-template-columns:1fr;gap:18px;padding:36px 0}.inner-number-grid,.inner-phases{grid-template-columns:1fr}.inner-steps article{grid-template-columns:65px 1fr}.inner-letter{font-size:3rem}.inner-page .nav-links [aria-current="page"]::after{display:none}}

/* Direction 02: deeper tonal rhythm, white headlines, deliberate brand accents. */
.landing-open #landing h2,
.landing-open #landing .quiet-gradient,
.inner-page main h2{color:#f7f7fa;text-shadow:none}
.landing-open #landing .quiet-gradient{color:#d9dce6}
.landing-open #landing .eyebrow,
.inner-page .inner-kicker{color:#b9a3ee}
.landing-open #landing .section-heading>p,
.landing-open #landing .lead{color:#c9cbd6}
.landing-open #landing .text-link{color:#cdbaff}

/* Full-width alternating surfaces without changing the approved planet hero. */
.landing-open #capacidades,
.landing-open .home-about,
.landing-open #productos,
.landing-open #contacto,
.inner-page .inner-section{position:relative;isolation:isolate}
.landing-open #capacidades::before,
.landing-open .home-about::before,
.landing-open #contacto::before,
.inner-page main>.inner-section::before{
  content:"";position:absolute;inset:0 auto 0 50%;width:100vw;
  transform:translateX(-50%);z-index:-2;pointer-events:none
}
.landing-open #capacidades::before{background:#0d111c}
.landing-open .home-about::before{background:linear-gradient(120deg,#141823,#10131e)}
.landing-open #productos{background:#0b0e17}
.landing-open #contacto::before{background:#0b0d16}
.inner-page main>.inner-section:nth-of-type(2n)::before{background:#111520}
.inner-page main>.inner-section:nth-of-type(2n+1)::before{background:#0b0d15}
.inner-page .inner-section h2{color:#f7f7fa}

/* A restrained vector cell supplies a visual pause on internal page heroes. */
.inner-page .inner-hero{position:relative;isolation:isolate}
.inner-page .inner-hero::before{
  content:"";position:absolute;right:-24%;top:0;width:78%;height:100%;z-index:-2;
  background:radial-gradient(ellipse at center,rgba(89,76,161,.17),transparent 65%);pointer-events:none
}
.inner-page .inner-hero::after{
  content:"";position:absolute;right:-8%;top:13%;width:min(42vw,550px);aspect-ratio:1;z-index:-1;
  background:url('assets/fxcell-cell-gradient.svg') center/contain no-repeat;
  opacity:.11;pointer-events:none
}
.inner-page[data-page="nosotros"] .inner-hero::after{opacity:.13}

/* Less visual density in cards and stronger space around every decision. */
.inner-card-grid{gap:28px}
.inner-card{min-height:340px;padding:clamp(32px,3.5vw,48px);background:#171b27;border-color:#ffffff13}
.inner-card h3{margin:54px 0 18px;max-width:340px}
.inner-card p{max-width:380px}
.inner-duo article,.inner-phases article,.inner-contact-grid>div{background:#191d29}
.inner-quote-grid p{background:#191d29;padding:38px}
.inner-heading{margin-bottom:65px}
.inner-service{padding:68px 0}
.inner-steps article{padding:48px 0}

/* One editorial light interval, only on About. The symbol stays vector-perfect. */
.inner-page .inner-light::before{background:#f2f3f5!important}
.inner-page .inner-light::after{
  content:"";position:absolute;right:0;top:50%;width:min(25vw,270px);aspect-ratio:1;
  transform:translateY(-50%);z-index:-1;background:#182033;opacity:.085;
  -webkit-mask:url('assets/fxcell-favicon-cell-white-transparent-v5.svg') center/contain no-repeat;
  mask:url('assets/fxcell-favicon-cell-white-transparent-v5.svg') center/contain no-repeat;
  pointer-events:none
}
.inner-page .inner-light h2{color:#11131b}
.inner-page .inner-light p{color:#353b48}

@media(max-width:900px){
  .inner-page .inner-hero::after{width:48vw;right:-17%;top:20%}
  .inner-card{min-height:310px}
}
@media(max-width:700px){
  .inner-page .inner-hero::after{width:75vw;right:-30%;top:9%;opacity:.07}
  .inner-page[data-page="nosotros"] .inner-hero::after{opacity:.085}
  .inner-card-grid{gap:18px}
  .inner-card{min-height:260px;padding:30px}
  .inner-card h3{margin:32px 0 14px}
  .inner-heading{margin-bottom:40px}
  .inner-service{padding:40px 0}
  .inner-steps article{padding:32px 0}
  .inner-page .inner-light::after{width:42vw;right:-12%;opacity:.055}
}

/* Living page themes: one quiet colour signature per destination. */
.inner-page{--page-glow:92,104,222;--page-accent:#aeb9ff}
.inner-page[data-page="nosotros"]{--page-glow:95,122,227;--page-accent:#aebcff}
.inner-page[data-page="soluciones"]{--page-glow:47,157,203;--page-accent:#8bdcf2}
.inner-page[data-page="productos"]{--page-glow:117,91,210;--page-accent:#c2adff}
.inner-page[data-page="metodo"]{--page-glow:57,146,184;--page-accent:#9cdeeb}
.inner-page[data-page="experiencia"]{--page-glow:72,132,172;--page-accent:#acd1e9}
.inner-page[data-page="contacto"]{--page-glow:104,111,198;--page-accent:#bbbaff}
.inner-page .inner-hero{
  background:radial-gradient(ellipse 54% 55% at 78% 48%,rgba(var(--page-glow),.16),transparent 75%);
}
.inner-page .inner-hero::before{
  background:radial-gradient(ellipse at center,rgba(var(--page-glow),.18),transparent 65%);
}
.inner-page .inner-hero::after{animation:fxcell-cell-drift 16s ease-in-out infinite alternate}
.inner-page .inner-hero h1{animation:fxcell-hero-rise .9s both}
.inner-page .inner-hero>p{animation:fxcell-hero-rise .9s .12s both}
.inner-page .inner-hero-actions{animation:fxcell-hero-rise .9s .22s both}
.inner-page .inner-kicker,.inner-page .inner-list span,.inner-page .inner-phases article>span,.inner-page .inner-number-grid span{color:var(--page-accent)}
.inner-page .inner-service strong,.inner-page .inner-card .inner-result{color:var(--page-accent)}
.inner-page .inner-card,.inner-page .inner-duo article,.inner-page .inner-phases article,.inner-page .inner-quote-grid p{
  transition:transform .4s ease,background-color .4s ease,border-color .4s ease,box-shadow .4s ease;
}
.inner-page .inner-card:hover,.inner-page .inner-duo article:hover,.inner-page .inner-phases article:hover,.inner-page .inner-quote-grid p:hover{
  transform:translateY(-5px);background:#202635;border-color:rgba(var(--page-glow),.32);
  box-shadow:0 22px 55px rgba(0,0,0,.15);
}
.inner-page .inner-service{transition:padding-left .35s ease,border-color .35s ease}
.inner-page .inner-service:hover{padding-left:12px;border-color:rgba(var(--page-glow),.55)}
.inner-page .inner-faq summary:hover{color:var(--page-accent)}
.inner-page .fx-reveal{opacity:.68;transform:translateY(18px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.inner-page .fx-reveal.is-visible{opacity:1;transform:translateY(0)}
.inner-page .inner-card.fx-reveal.is-visible:hover,.inner-page .inner-phases article.fx-reveal.is-visible:hover{transform:translateY(-5px)}
@keyframes fxcell-cell-drift{from{transform:translate3d(0,0,0) rotate(-5deg)}to{transform:translate3d(-14px,12px,0) rotate(5deg)}}
@keyframes fxcell-hero-rise{from{transform:translateY(14px)}to{transform:translateY(0)}}
@media(max-width:700px){
  .inner-page .inner-hero{background:radial-gradient(ellipse 82% 42% at 85% 31%,rgba(var(--page-glow),.11),transparent 80%)}
  .inner-page .inner-service:hover{padding-left:0}
}
@media(prefers-reduced-motion:reduce){
  .inner-page .inner-hero::after,.inner-page .inner-hero h1,.inner-page .inner-hero>p,.inner-page .inner-hero-actions{animation:none}
  .inner-page .fx-reveal{opacity:1;transform:none}
  .inner-page .inner-card:hover,.inner-page .inner-duo article:hover,.inner-page .inner-phases article:hover,.inner-page .inner-quote-grid p:hover{transform:none}
}
