:root { --ink:#071a2d; --ink-2:#102c45; --blue:#0b5d88; --cyan:#00a7bf; --lime:#b9d432; --paper:#fff; --mist:#f1f5f7; --muted:#647482; --line:#dbe4e9; --shadow:0 22px 60px rgba(7,26,45,.12); --container:1180px; }
[hidden]{display:none!important}
*,*::before,*::after{box-sizing:border-box} html{scroll-behavior:smooth;scroll-padding-top:90px} body{margin:0;min-width:320px;overflow-x:hidden;color:var(--ink);background:var(--paper);font-family:Inter,Aptos,"Segoe UI",Arial,sans-serif;line-height:1.6} body.menu-open{overflow:hidden} img{display:block;max-width:100%} a{color:inherit;text-decoration:none} button,a{-webkit-tap-highlight-color:transparent} button{font:inherit}.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}.skip-link{position:fixed;z-index:999;top:10px;left:10px;padding:10px 14px;color:#fff;background:var(--ink);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.utility-bar{color:#c9d8e4;background:var(--ink);font-size:.78rem;letter-spacing:.05em}.utility-bar__inner{display:flex;justify-content:space-between;align-items:center;min-height:34px}.utility-links{display:flex;gap:24px}.utility-links a:hover{color:#fff}.nav-wrap{position:relative;z-index:50;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(219,228,233,.75)}.nav-wrap.is-sticky{position:fixed;top:0;right:0;left:0;box-shadow:0 8px 28px rgba(7,26,45,.09);animation:drop .25s ease}@keyframes drop{from{transform:translateY(-100%)}}.nav-inner{display:flex;align-items:center;justify-content:space-between;min-height:78px}.brand{width:238px;padding-block:6px}.brand img{width:100%;height:auto}.site-nav{display:flex;align-items:center;gap:clamp(18px,2.3vw,34px);font-size:.86rem;font-weight:700;letter-spacing:.02em}.site-nav a{position:relative;padding-block:28px}.site-nav a:not(.nav-cta)::after{position:absolute;right:0;bottom:20px;left:0;height:2px;content:"";background:var(--cyan);transform:scaleX(0);transform-origin:right;transition:transform .25s ease}.site-nav a:hover::after,.site-nav a.is-current::after{transform:scaleX(1);transform-origin:left}.site-nav .nav-cta{padding:10px 18px;color:#fff;background:var(--ink);border-radius:999px}.site-nav .nav-cta:hover{background:var(--blue)}.menu-toggle{display:none;width:44px;height:44px;padding:10px;border:0;background:transparent}.menu-toggle span{display:block;width:24px;height:2px;margin:5px auto;background:var(--ink);transition:.25s}
.hero{background:var(--ink)}.slider{position:relative;min-height:clamp(570px,74vh,760px);overflow:hidden;color:#fff;outline:none;touch-action:pan-y}.slides,.slide{position:absolute;inset:0}.slide{visibility:hidden;opacity:0;transition:opacity .7s ease,visibility .7s}.slide.is-active{visibility:visible;opacity:1;z-index:1}.slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.045);transition:transform 7s linear}.slide.is-active img{transform:scale(1)}.slide:nth-child(3) img{object-position:center 46%}.slide-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,17,31,.92) 0%,rgba(3,17,31,.65) 48%,rgba(3,17,31,.13) 80%),linear-gradient(0deg,rgba(3,17,31,.5),transparent 42%)}.slide-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;height:100%;padding-top:25px;padding-right:min(48%,520px)}.eyebrow,.section-kicker{margin:0 0 16px;color:var(--cyan);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.slide-content .eyebrow{color:#d8ef64}.slide h1,.slide h2{max-width:760px;margin:0 0 20px;font-size:clamp(2.55rem,5.5vw,5.25rem);line-height:.98;letter-spacing:-.045em;text-wrap:balance}.slide h2{font-size:clamp(2.4rem,4.7vw,4.65rem)}.slide-content>p:not(.eyebrow){max-width:610px;margin:0 0 30px;color:#dce7ef;font-size:clamp(1rem,1.5vw,1.2rem)}.button-row{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 22px;border:1px solid transparent;border-radius:999px;font-size:.86rem;font-weight:800;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.button:hover{transform:translateY(-2px)}.button--primary{color:var(--ink);background:var(--lime)}.button--primary:hover{background:#d0e956}.button--ghost{color:#fff;border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.06);backdrop-filter:blur(6px)}.button--ghost:hover{background:#fff;color:var(--ink)}.button--dark{color:#fff;background:var(--ink)}.button--dark:hover{background:var(--blue)}.slider-arrow{position:absolute;z-index:3;top:50%;display:grid;width:48px;height:48px;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(3,17,31,.25);transform:translateY(-50%);cursor:pointer;backdrop-filter:blur(7px)}.slider-arrow:hover{color:var(--ink);background:#fff}.slider-arrow svg{width:23px;fill:none;stroke:currentColor;stroke-width:2}.slider-arrow--prev{left:max(20px,calc((100vw - var(--container))/2 - 70px))}.slider-arrow--next{right:max(20px,calc((100vw - var(--container))/2 - 70px))}.slider-dots{position:absolute;z-index:3;right:0;bottom:28px;left:0;display:flex;justify-content:center;gap:9px}.slider-dot{width:26px;height:3px;padding:0;border:0;background:rgba(255,255,255,.38);cursor:pointer;transition:width .25s,background .25s}.slider-dot.is-active{width:52px;background:var(--lime)}.slider-progress{position:absolute;z-index:3;right:0;bottom:0;left:0;height:3px;background:rgba(255,255,255,.12)}.slider-progress span{display:block;width:0;height:100%;background:var(--lime)}.slider.is-running .slider-progress span{animation:progress 6s linear}@keyframes progress{to{width:100%}}
.section{padding:clamp(78px,10vw,132px) 0}.section--tint{background:var(--mist)}.section-title{max-width:720px;margin:0;font-size:clamp(2.1rem,4vw,4rem);line-height:1.06;letter-spacing:-.04em;text-wrap:balance}.section-heading{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:60px;align-items:end;margin-bottom:52px}.section-heading>p{margin:0 0 7px;color:var(--muted);font-size:1.02rem}.intro-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(60px,9vw,130px)}.intro-copy>p{color:var(--muted)}.intro-copy .lead{margin-top:0;color:var(--ink);font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.5}.purpose-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:42px}.purpose-grid article{padding:28px;border-top:3px solid var(--cyan);background:var(--mist)}.purpose-number,.service-index{color:var(--cyan);font-size:.74rem;font-weight:800;letter-spacing:.12em}.purpose-grid h3{margin:18px 0 7px;font-size:1.22rem}.purpose-grid p{margin:0;color:var(--muted);font-size:.93rem}
.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}.service-card{position:relative;display:flex;min-width:0;min-height:300px;flex-direction:column;padding:25px;overflow:hidden;border:1px solid var(--line);background:#fff;transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:hover{z-index:1;border-color:transparent;box-shadow:var(--shadow);transform:translateY(-5px)}.service-card .service-index{position:absolute;z-index:2;top:25px;right:25px;color:#9aabb6}.service-icon{display:grid;width:48px;height:48px;place-items:center;color:var(--blue);border-radius:50%;background:#e5f4f7;font-size:1.35rem}.service-card h3{margin:48px 0 12px;font-size:1.3rem;line-height:1.25}.service-card p{margin:0;color:var(--muted);font-size:.91rem;line-height:1.55}.service-card__list{margin:0;padding-left:1.15rem;color:var(--muted);font-size:.89rem;line-height:1.48}.service-card__list li{padding-left:.15rem}.service-card__list li+li{margin-top:.42rem}.service-card__list li::marker{color:var(--cyan)}.service-card--accent{color:#fff;border-color:var(--blue);background:var(--blue)}.service-card--accent .service-index,.service-card--accent p,.service-card--accent .service-card__list{color:#dcebf3}.service-card--accent .service-icon{color:var(--ink);background:var(--lime)}.service-card--accent h3{margin-top:30px}.service-card--accent a{display:inline-block;margin-top:auto;padding-top:20px;color:#fff;font-size:.85rem;font-weight:800}.service-card--accent a span{color:var(--lime)}
.tech{color:#fff;background:var(--ink)}.section-heading--light>p{color:#b7c7d3}.media-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;grid-auto-rows:280px;gap:14px}.media-card{position:relative;min-width:0;overflow:hidden;background:var(--ink-2)}.media-card--wide{grid-row:span 2}.media-card:nth-child(4){grid-column:span 2}.media-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.media-card:hover img{transform:scale(1.035)}.media-card::after{position:absolute;inset:35% 0 0;content:"";background:linear-gradient(transparent,rgba(2,13,24,.9));pointer-events:none}.media-card__body{position:absolute;z-index:1;right:24px;bottom:22px;left:24px}.media-card__body p{margin:0 0 2px;color:var(--lime);font-size:.71rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.media-card__body h3{margin:0;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.2}.media-card__body span{color:#b9c8d3;font-size:.84rem}.pending-card{color:#fff;background:linear-gradient(135deg,#123650,#0b253b)}.pending-pattern{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(135deg,#000,transparent 85%)}
.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card{min-width:0;border:1px solid var(--line);background:#fff;transition:box-shadow .25s,transform .25s}.project-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.project-card__image{position:relative;height:290px;overflow:hidden;background:var(--mist)}.project-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card__image--portrait img{object-position:center 52%}.project-card:hover img{transform:scale(1.035)}.project-card__body{padding:26px}.project-card__body span{color:var(--cyan);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.project-card__body h3{margin:9px 0 8px;font-size:1.35rem}.project-card__body p{margin:0;color:var(--muted);font-size:.9rem}.project-card--pending .project-card__image{display:grid;place-items:center}.project-card--pending .project-card__image strong{position:relative;z-index:1;font-size:1.25rem}
.courses{background:linear-gradient(105deg,#eaf0f3 0 50%,#fff 50%)}.courses-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.82fr);gap:clamp(55px,8vw,110px);align-items:center}.courses-visual{position:relative;min-height:620px}.courses-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.courses-badge{position:absolute;right:-26px;bottom:36px;display:flex;max-width:270px;flex-direction:column;padding:22px 25px;color:var(--ink);background:var(--lime);box-shadow:var(--shadow)}.courses-badge strong{font-size:1.15rem}.courses-badge span{font-size:.82rem}.courses-copy>p:not(.section-kicker){color:var(--muted)}.course-list{margin:34px 0;padding:0;list-style:none;border-top:1px solid var(--line)}.course-list li{display:grid;grid-template-columns:38px 1fr;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.course-list li>span{color:var(--cyan);font-size:.75rem;font-weight:800}.course-list strong,.course-list small{display:block}.course-list strong{line-height:1.3}.course-list small{margin-top:3px;color:var(--muted)}
.contact{padding:clamp(78px,10vw,125px) 0;color:#fff;background:var(--blue)}.contact .section-kicker{color:var(--lime)}.contact-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(55px,9vw,120px)}.contact-intro h2{margin:0 0 22px;font-size:clamp(2.2rem,4vw,4rem);line-height:1.04;letter-spacing:-.04em}.contact-intro>p:not(.section-kicker){margin-bottom:28px;color:#d3e6f0}.contact-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contact-details article{display:grid;grid-template-columns:30px 1fr;gap:14px;padding:24px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06)}.contact-details article>span{color:var(--lime);font-size:.72rem;font-weight:800}.contact-details h3{margin:0 0 8px;font-size:1rem}.contact-details p{margin:0;color:#d3e6f0;font-size:.87rem}.contact-details a:hover{color:var(--lime)}
.site-footer{padding:65px 0 22px;color:#b7c7d3;background:#04111e}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:55px}.footer-grid>div:first-child img{width:220px;filter:invert(1) grayscale(1) brightness(3);mix-blend-mode:screen}.footer-grid p{margin:17px 0 0;font-size:.84rem}.footer-grid h2{margin:0 0 16px;color:#fff;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}.footer-grid a{display:block;width:fit-content;margin:8px 0;font-size:.85rem}.footer-grid a:hover{color:var(--lime)}.footer-bottom{display:flex;justify-content:space-between;margin-top:52px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:.74rem}.whatsapp-float{position:fixed;z-index:90;right:22px;bottom:22px;display:flex;align-items:center;gap:9px;padding:11px 17px 11px 12px;color:#fff;border-radius:999px;background:#21b759;box-shadow:0 10px 28px rgba(0,0,0,.25);font-size:.82rem;font-weight:800;transition:transform .2s,background .2s}.whatsapp-float:hover{background:#159849;transform:translateY(-3px)}.whatsapp-float svg{width:26px;fill:currentColor}
@media(max-width:1020px){.menu-toggle{display:block}.site-nav{position:fixed;z-index:60;top:0;right:0;width:min(84vw,380px);height:100dvh;flex-direction:column;align-items:stretch;gap:0;padding:90px 32px 32px;background:#fff;box-shadow:-18px 0 50px rgba(7,26,45,.18);transform:translateX(105%);transition:transform .3s ease}.site-nav.is-open{transform:translateX(0)}.site-nav a{padding:16px 0;border-bottom:1px solid var(--line);font-size:1rem}.site-nav a::after{display:none}.site-nav .nav-cta{margin-top:18px;padding:12px 18px;text-align:center}.menu-toggle{position:relative;z-index:70}.menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.slide-content{padding-right:110px}.slider-arrow--prev{left:14px}.slider-arrow--next{right:14px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1.5fr repeat(2,1fr)}.footer-grid>div:last-child{grid-column:2}}
@media(max-width:760px){.container{width:min(calc(100% - 30px),var(--container))}.utility-bar__inner>span{display:none}.utility-bar__inner{justify-content:center;min-height:31px}.utility-links{gap:14px;font-size:.68rem}.utility-links a:last-child{display:none}.nav-inner{min-height:68px}.brand{width:190px}.slider{min-height:610px}.slide-shade{background:linear-gradient(90deg,rgba(3,17,31,.9),rgba(3,17,31,.45)),linear-gradient(0deg,rgba(3,17,31,.64),transparent 60%)}.slide-content{justify-content:flex-end;padding:0 20px 105px 0}.slide h1,.slide h2{font-size:clamp(2.35rem,11vw,3.6rem)}.slide-content>p:not(.eyebrow){font-size:.98rem;line-height:1.5}.button-row{width:100%}.button-row .button{width:100%}.slider-arrow{top:auto;bottom:22px;width:42px;height:42px;transform:none}.slider-arrow--prev{left:15px}.slider-arrow--next{right:15px}.slider-dots{bottom:41px}.slider-dot{width:18px}.slider-dot.is-active{width:32px}.section-heading,.intro-grid,.courses-grid,.contact-grid{grid-template-columns:1fr}.section-heading{gap:22px;margin-bottom:38px}.intro-grid{gap:34px}.purpose-grid{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr}.service-card{min-height:240px}.media-grid{grid-template-columns:1fr;grid-auto-rows:300px}.media-card--wide{grid-row:auto}.media-card:nth-child(4){grid-column:auto}.projects-grid{grid-template-columns:1fr}.project-card__image{height:270px}.courses{background:linear-gradient(#eaf0f3 0 39%,#fff 39%)}.courses-visual{min-height:500px;margin-right:14px}.courses-badge{right:-14px}.contact-details{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 24px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}.whatsapp-float{right:14px;bottom:14px;width:52px;height:52px;justify-content:center;padding:0}.whatsapp-float span{display:none}}
@media(max-width:380px){.brand{width:165px}.slide-content{padding-right:8px}.slide h1,.slide h2{font-size:2.25rem}.footer-grid{grid-template-columns:1fr}.footer-grid>div{grid-column:1!important}}
.slide .slide-content{position:absolute;inset:0}
.service-card__media{position:relative;width:100%;height:190px;margin:0 0 20px;overflow:hidden;border:1px solid #d8e3e9;background:linear-gradient(145deg,#edf3f6,#f8fafb)}.service-card__photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center}.service-card:has(.service-card__media) .service-index{top:35px;right:35px;padding:5px 7px;color:#fff;background:rgba(3,17,31,.68);backdrop-filter:blur(5px)}.service-card:has(.service-card__media) h3{margin-top:2px}.course-list li{grid-template-columns:38px minmax(0,1fr) auto}.course-list li>a{display:grid;width:34px;height:34px;place-items:center;color:#fff;border-radius:50%;background:var(--blue);font-weight:800}.course-list li.is-finished{opacity:.58}.course-list li div p{margin:7px 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.project-card__body small{display:block;margin:-4px 0 8px;color:var(--muted);font-size:.75rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.team-note{position:relative;margin-top:32px;padding:24px 26px 24px 30px;overflow:hidden;border-left:3px solid var(--lime);background:linear-gradient(110deg,var(--ink),var(--ink-2));color:#fff}.team-note::after{position:absolute;right:-45px;bottom:-65px;width:170px;height:170px;content:"";border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 26px rgba(255,255,255,.035)}.team-note__label{display:block;margin-bottom:7px;color:var(--lime);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.team-note p{position:relative;z-index:1;margin:0;color:#dce7ef;font-size:.91rem}
.insights{background:#fff}.insights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.insight-card{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(0,1.3fr);min-width:0;overflow:hidden;border:1px solid var(--line);background:#fff;transition:transform .25s,box-shadow .25s}.insight-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.insight-card__visual{position:relative;display:grid;min-height:310px;place-items:center;overflow:hidden;color:#fff;background:linear-gradient(145deg,#071a2d,#0b5d88)}.insight-card__visual::before,.insight-card__visual::after{position:absolute;content:"";border:1px solid rgba(255,255,255,.2);border-radius:50%}.insight-card__visual::before{width:220px;height:220px;right:-95px;top:-55px}.insight-card__visual::after{width:120px;height:120px;left:-55px;bottom:-20px}.insight-card__visual--alt{background:linear-gradient(145deg,#0b5d88,#00a7bf)}.insight-card__visual span{position:relative;z-index:1;color:var(--lime);font-size:1.15rem;font-weight:900;letter-spacing:.16em}.insight-card__body{display:flex;min-width:0;flex-direction:column;padding:28px}.insight-card__body>p{margin:0 0 15px;color:var(--cyan);font-size:.69rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.insight-card__body h3{margin:0 0 12px;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.2}.insight-card__body>span{color:var(--muted);font-size:.88rem}.insight-card__body a{width:fit-content;margin-top:auto;padding-top:24px;color:var(--blue);font-size:.82rem;font-weight:800}.insight-card__body a b{color:var(--cyan)}
@media(max-width:1020px){.site-nav{overflow-y:auto}.insight-card{grid-template-columns:1fr}.insight-card__visual{min-height:180px}}
@media(max-width:760px){.team-note{padding:22px}.insights-grid{grid-template-columns:1fr}.insight-card{grid-template-columns:minmax(105px,.42fr) minmax(0,1.58fr)}.insight-card__visual{min-height:270px}.insight-card__body{padding:22px}}
@media(max-width:480px){.insight-card{grid-template-columns:1fr}.insight-card__visual{min-height:145px}}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.team-card,.training-card{min-width:0;overflow:hidden;background:#fff;border:1px solid var(--line)}.team-card>img{width:100%;height:350px;object-fit:contain;background:#e4ecef}.team-card__body{padding:25px}.team-card h3{font-size:1.2rem;line-height:1.3;margin:15px 0 8px}.team-role{color:var(--blue);font-size:.88rem;font-weight:700;min-height:3em}.team-card details{border-top:1px solid var(--line);padding-top:15px;color:var(--muted);font-size:.9rem}.team-card summary{cursor:pointer;color:var(--ink);font-weight:700}.review-badge{display:inline-block;padding:4px 9px;border-radius:4px;background:#fff5d9;color:#755000;font-size:.7rem;font-weight:700}.review-note{padding:16px 20px;border-left:3px solid var(--lime);background:#e8eff2;color:var(--ink);font-size:.88rem;margin:0 0 28px}.contact .review-note{margin-top:24px;background:rgba(255,255,255,.12);color:#fff}.international-block{margin-top:60px;padding-top:40px;border-top:1px solid var(--line)}.international-block h3{font-size:clamp(1.5rem,3vw,2.3rem);line-height:1.2;margin:0 0 24px}.training-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.training-placeholder{grid-column:1/-1;display:flex;align-items:center;gap:25px;padding:32px;color:#dce7ef;background:linear-gradient(120deg,var(--ink),var(--ink-2))}.training-placeholder>span{color:var(--lime);font-size:3rem}.training-placeholder h4{color:#fff;font-size:1.2rem;margin:0 0 6px}.training-placeholder p{margin:0}.training-card>img{width:100%;height:300px;object-fit:contain}.training-card h4{font-size:1.2rem;margin:14px 0}.team-photo-pending{display:grid;place-items:center;min-height:220px;background:var(--ink-2);color:#fff}.team-card__body,.training-card{overflow-wrap:anywhere}.course-history{border-left:2px solid var(--line);padding-left:10px}.team-jump{display:inline-block;margin-top:16px;color:var(--blue);font-weight:700}
@media(max-width:1020px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.team-grid,.training-grid{grid-template-columns:1fr}.training-placeholder{align-items:flex-start;padding:24px;gap:16px}.team-card>img{height:360px}}
.section#equipo .section-heading{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:45px}
@media(max-width:760px){.section#equipo .section-heading{grid-template-columns:1fr;gap:22px}}
/* El mismo encuadre del slider se aplica a fotografías y videos. */
.slide>.slide-media{width:100%;height:100%;object-fit:cover;transform:scale(1.045);transition:transform 7s linear}.slide.is-active>.slide-media{transform:scale(1)}.slide:nth-child(3)>.slide-media{object-position:center 46%}video.slide-media{display:block;background:var(--ink)}

/* Galería fotográfica destacada inspirada en la sección histórica de TEC-D. */
.project-showcase-section{padding:0 0 clamp(78px,9vw,118px);background:var(--paper)}
.project-showcase{position:relative;isolation:isolate;min-height:480px;overflow:hidden;background:var(--ink)}
.showcase-columns{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;background:rgba(255,255,255,.2)}
.showcase-column{position:relative;min-width:0;overflow:hidden;background:var(--ink-2)}
.showcase-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.15s cubic-bezier(.62,.02,.23,1);transition-delay:var(--column-delay,0ms);will-change:transform}
.showcase-photo--current{transform:translateY(0)}
.showcase-photo--next{transform:translateY(-101%)}
.project-showcase-section.is-showcase-ready:not(.is-showcase-started) .showcase-photo--current{transform:translateY(-101%)}
.project-showcase-section.is-showcase-started .showcase-photo--current{transform:translateY(0)}
.showcase-column.is-changing .showcase-photo--current{transform:translateY(101%)}
.showcase-column.is-changing .showcase-photo--next{transform:translateY(0)}
.showcase-column.is-resetting .showcase-photo{transition:none!important}
.showcase-shade{position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(4,19,33,.18),transparent 24%,transparent 76%,rgba(4,19,33,.18))}
.showcase-copy{position:absolute;z-index:2;top:50%;left:50%;width:min(760px,calc(100% - 110px));padding:30px 46px;color:#fff;border:1px solid rgba(255,255,255,.11);background:rgba(4,18,31,.72);box-shadow:0 24px 65px rgba(0,0,0,.28);text-align:center;transform:translate(-50%,calc(-50% + 24px)) scale(.98);opacity:1;transition:opacity .5s ease,transform .65s cubic-bezier(.2,.7,.2,1);backdrop-filter:blur(5px)}
.project-showcase-section.is-showcase-ready .showcase-copy{opacity:0;pointer-events:none}
.project-showcase-section.is-message-visible .showcase-copy{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}
.showcase-kicker{margin:0 0 10px;color:var(--lime);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.showcase-copy h2{margin:0 auto 13px;max-width:650px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.7rem,2.55vw,2.45rem);font-style:italic;font-weight:500;line-height:1.1;letter-spacing:-.025em;text-wrap:balance}
.showcase-copy>p:not(.showcase-kicker){max-width:650px;margin:0 auto 23px;color:#edf3f6;font-family:Georgia,"Times New Roman",serif;font-size:clamp(.98rem,1.3vw,1.1rem);font-style:italic;line-height:1.48}
.showcase-copy .button{min-width:220px}
@media(max-width:760px){.project-showcase-section{padding-bottom:72px}.project-showcase{min-height:500px}.showcase-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-column:nth-child(n+3){display:none}.showcase-copy{width:calc(100% - 26px);padding:25px 18px;background:rgba(4,18,31,.76)}.showcase-copy h2{font-size:clamp(1.55rem,7.5vw,2.12rem)}.showcase-copy>p:not(.showcase-kicker){font-size:.9rem}.showcase-copy .button{width:100%;min-width:0}}
/* En celular, la galería conserva cuatro fotografías y una proporción panorámica. */
@media(max-width:760px){.project-showcase{min-height:clamp(320px,88vw,350px)}.showcase-columns{grid-template-columns:repeat(4,minmax(0,1fr))}.showcase-column:nth-child(n+3){display:block}.showcase-photo{object-position:center}.showcase-copy{width:calc(100% - 30px);padding:20px 15px}.showcase-copy h2{margin-bottom:9px;font-size:clamp(1.35rem,6.2vw,1.75rem);line-height:1.05}.showcase-copy>p:not(.showcase-kicker){margin-bottom:16px;font-size:.82rem;line-height:1.35}.showcase-copy .button{min-height:44px;padding:10px 17px}}
@media(prefers-reduced-motion:reduce){.showcase-photo,.showcase-copy{transition:none!important}}

/* Arquitectura multipágina y portada comercial. */
.site-nav a[aria-current="page"]:not(.nav-cta)::after{transform:scaleX(1);transform-origin:left}.site-nav .nav-cta[aria-current="page"]{background:var(--blue)}
.project-showcase-section--home{padding-top:clamp(72px,9vw,112px)}
.text-link{display:inline-flex;margin-top:12px;color:var(--blue);font-size:.86rem;font-weight:800}.text-link:hover{color:var(--cyan)}
.home-media{background:#fff}.home-media__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(42px,7vw,95px);align-items:center}.home-media__visual{position:relative;min-height:470px;overflow:hidden;background:var(--ink)}.home-media__visual video,.home-media__visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home-media__visual::after{position:absolute;inset:0;content:"";border:1px solid rgba(7,26,45,.12);pointer-events:none}.home-media__copy>p:not(.section-kicker){margin:24px 0 30px;color:var(--muted);font-size:1.02rem}
.home-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.home-service-card{display:flex;min-width:0;flex-direction:column;border:1px solid var(--line);background:#fff;transition:transform .25s,box-shadow .25s}.home-service-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.home-service-card__visual{display:grid;height:230px;place-items:center;overflow:hidden;color:var(--blue);background:#dcebef;font-size:2rem}.home-service-card__visual img{width:100%;height:100%;object-fit:cover}.home-service-card__body{display:flex;min-height:245px;flex-direction:column;padding:26px}.home-service-card__body small{color:var(--cyan);font-weight:800}.home-service-card__body h3{margin:9px 0 11px;font-size:1.35rem}.home-service-card__body p{margin:0;color:var(--muted);font-size:.9rem}.home-service-card__body a{margin-top:auto;padding-top:22px;color:var(--blue);font-size:.84rem;font-weight:800}.home-services-controls{display:none}
.home-course-cta,.page-cta{padding:clamp(65px,8vw,100px) 0;color:#fff;background:var(--ink)}.home-course-cta__inner,.page-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.home-course-cta h2,.page-cta h2{max-width:760px;margin:0;font-size:clamp(2rem,3.6vw,3.6rem);line-height:1.08;letter-spacing:-.04em}.home-course-cta p:not(.section-kicker){max-width:690px;margin:16px 0 0;color:#b9c8d3}.home-course-cta .section-kicker,.page-cta .section-kicker{color:var(--lime)}
.inner-hero{position:relative;isolation:isolate;display:flex;min-height:470px;align-items:flex-end;padding:100px 0 75px;color:#fff;background-color:var(--ink);background-position:center;background-size:cover}.inner-hero::before{position:absolute;z-index:-1;inset:0;content:"";background:linear-gradient(90deg,rgba(3,17,31,.95),rgba(3,17,31,.62) 58%,rgba(3,17,31,.25))}.inner-hero--about{background-image:url("assets/web/campo-equipo.jpg")}.inner-hero--services{background-image:url("assets/web/proyecto-gnss.jpg")}.inner-hero--courses{background-image:url("assets/web/curso-practico.jpg")}.inner-hero--blog{background-image:url("assets/web/proyecto-obra.jpg")}.inner-hero--contact{background-image:url("assets/web/hero-equipo.jpg")}.inner-hero h1{max-width:900px;margin:0 0 20px;font-size:clamp(2.65rem,5.5vw,5.5rem);line-height:.98;letter-spacing:-.05em;text-wrap:balance}.inner-hero>div>p:not(.section-kicker){max-width:700px;margin:0;color:#d5e2eb;font-size:1.12rem}.page-inner .intro{background:#fff}.contact--page{padding:clamp(90px,10vw,140px) 0}.course-values{padding:0 0 clamp(80px,10vw,130px);background:#fff}.course-values__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.course-values article{padding:30px;border-top:3px solid var(--cyan);background:var(--mist)}.course-values span{color:var(--cyan);font-size:.74rem;font-weight:800}.course-values h2{margin:18px 0 8px;font-size:1.25rem}.course-values p{margin:0;color:var(--muted);font-size:.9rem}
@media(max-width:900px){.home-media__grid{grid-template-columns:1fr}.home-media__visual{min-height:420px}.home-services-grid{grid-template-columns:1fr 1fr}.home-course-cta__inner,.page-cta__inner{align-items:flex-start;flex-direction:column}.course-values__grid{grid-template-columns:1fr}}
@media(max-width:760px){.inner-hero{min-height:420px;padding:80px 0 55px}.inner-hero h1{font-size:clamp(2.45rem,11vw,3.7rem)}.home-media__visual{min-height:360px}.home-services .section-heading{margin-bottom:28px}.home-services-grid{display:grid;grid-auto-flow:column;grid-auto-columns:min(84vw,340px);grid-template-columns:none;gap:14px;margin:0 -15px;padding:0 15px 12px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scroll-padding-inline:15px;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;scrollbar-width:none}.home-services-grid::-webkit-scrollbar{display:none}.home-service-card{scroll-snap-align:start;scroll-snap-stop:always}.home-service-card:hover{transform:none}.home-service-card__visual{height:225px}.home-service-card__body{min-height:220px}.home-services-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px}.home-services-controls span{color:var(--muted);font-size:.75rem;font-weight:700}.home-services-controls button{display:grid;width:45px;height:45px;flex:0 0 auto;place-items:center;color:#fff;border:0;border-radius:50%;background:var(--ink);transition:opacity .2s,background .2s}.home-services-controls button:disabled{opacity:.28}.home-services-controls button:not(:disabled):active{background:var(--blue)}.home-services-controls svg{width:21px;fill:none;stroke:currentColor;stroke-width:2}.home-course-cta__inner .button,.page-cta__inner .button{width:100%}}

/* Ventas integradas en la portada. Los precios son informativos y la consulta se realiza por WhatsApp. */
.sales-section{overflow:hidden;background:#fff}.sales-heading{align-items:end}.sales-price-note{margin:12px 0 0;padding-left:14px;color:var(--muted);border-left:2px solid var(--lime);font-size:.78rem}.sales-filters{display:flex;gap:9px;margin:-20px 0 28px;overflow-x:auto;padding:4px 0;scrollbar-width:none}.sales-filters::-webkit-scrollbar{display:none}.sales-filter{flex:0 0 auto;padding:10px 17px;color:var(--ink);border:1px solid var(--line);border-radius:999px;background:#fff;font-size:.78rem;font-weight:800}.sales-filter:hover,.sales-filter.is-active{color:#fff;border-color:var(--ink);background:var(--ink)}.sales-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.sales-card{position:relative;display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid var(--line);background:#fff;box-shadow:0 10px 28px rgba(7,26,45,.06);transition:transform .25s,box-shadow .25s}.sales-card:hover{box-shadow:0 18px 38px rgba(7,26,45,.12);transform:translateY(-5px)}.sales-card[hidden]{display:none!important}.sales-card__discount{position:absolute;z-index:2;top:16px;left:16px;display:grid;min-width:52px;height:52px;padding:0 8px;place-items:center;color:#fff;border-radius:50%;background:#e43535;font-size:.8rem;font-weight:900}.sales-card__visual{height:245px;overflow:hidden;border-bottom:1px solid var(--line);background:#f3f7f9}.sales-card__visual>img{width:100%;height:100%;object-fit:contain}.sales-card__placeholder{position:relative;display:grid;height:100%;place-content:center;gap:5px;overflow:hidden;color:#fff;text-align:center;background:linear-gradient(145deg,#071a2d,#0b5d88)}.sales-card__placeholder::before,.sales-card__placeholder::after{position:absolute;content:"";border:1px solid rgba(255,255,255,.16);border-radius:50%}.sales-card__placeholder::before{top:-75px;right:-55px;width:220px;height:220px}.sales-card__placeholder::after{bottom:-85px;left:-35px;width:180px;height:180px}.sales-card__placeholder span{position:relative;color:var(--lime);font-size:.7rem;font-weight:900;letter-spacing:.2em}.sales-card__placeholder strong{position:relative;font-size:1.55rem}.sales-card__placeholder small{position:relative;color:#c7d7e1}.sales-card__body{display:flex;min-height:390px;flex:1;flex-direction:column;padding:24px}.sales-card__meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.sales-card__meta span{color:var(--cyan);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.sales-card__meta small{color:var(--muted);font-size:.68rem}.sales-card h3{margin:11px 0 8px;font-size:1.25rem;line-height:1.22}.sales-card__body>p{margin:0 0 13px;color:var(--muted);font-size:.86rem}.sales-card ul{display:grid;gap:7px;margin:4px 0 22px;padding:0;list-style:none;color:#48606f;font-size:.78rem}.sales-card li{position:relative;padding-left:15px}.sales-card li::before{position:absolute;top:.5em;left:0;width:5px;height:5px;content:"";border-radius:50%;background:var(--lime)}.sales-card__footer{display:grid;gap:15px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.sales-card__price>span{display:block;margin-bottom:4px;color:var(--muted);font-size:.66rem;font-weight:800;text-transform:uppercase}.sales-card__price>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.sales-card__price del{color:#8da0ab;font-size:.86rem}.sales-card__price strong{display:block;color:var(--blue);font-size:1.4rem}.sales-card__footer .button{width:100%;min-height:46px;text-align:center}.sales-support{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px;color:#fff;background:var(--ink)}.sales-support article{display:flex;gap:16px;padding:23px 25px;border-right:1px solid rgba(255,255,255,.1)}.sales-support article:last-child{border-right:0}.sales-support span{color:var(--lime);font-size:.72rem;font-weight:900}.sales-support strong{display:block;margin-bottom:4px}.sales-support p{margin:0;color:#b9c8d3;font-size:.76rem}
@media(max-width:980px){.sales-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-support{grid-template-columns:1fr}.sales-support article{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.sales-support article:last-child{border-bottom:0}}
@media(max-width:760px){.sales-heading{margin-bottom:24px}.sales-filters{margin:0 -15px 20px;padding:4px 15px}.sales-grid{grid-auto-flow:column;grid-auto-columns:min(86vw,350px);grid-template-columns:none;gap:14px;margin:0 -15px;padding:0 15px 12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:15px;overscroll-behavior-inline:contain;scrollbar-width:none}.sales-grid::-webkit-scrollbar{display:none}.sales-card{scroll-snap-align:start;scroll-snap-stop:always}.sales-card:hover{transform:none}.sales-card__visual{height:225px}.sales-card__body{min-height:385px;padding:22px}.sales-support{margin-top:22px}.sales-support article{padding:20px}}

/* Carrusel de productos y categorías creadas automáticamente desde Ventas. */
.sales-section{scroll-margin-top:110px}.sales-carousel{min-width:0}.sales-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);grid-template-columns:none;gap:20px;padding:0 0 12px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;scrollbar-width:none}.sales-grid::-webkit-scrollbar{display:none}.sales-card{scroll-snap-align:start;scroll-snap-stop:always}.sales-carousel__controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px}.sales-carousel__controls>span{color:var(--muted);font-size:.76rem;font-weight:700}.sales-carousel__controls>div{display:flex;gap:9px}.sales-carousel__controls button{display:grid;width:46px;height:46px;place-items:center;color:#fff;border:0;border-radius:50%;background:var(--ink);transition:opacity .2s,background .2s}.sales-carousel__controls button:hover:not(:disabled){background:var(--blue)}.sales-carousel__controls button:disabled{cursor:default;opacity:.25}.sales-carousel__controls svg{width:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:980px){.sales-grid{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:760px){.sales-grid{grid-auto-columns:min(86vw,350px);gap:14px;margin:0 -15px;padding:0 15px 12px;scroll-padding-inline:15px}.sales-carousel__controls{margin-top:12px;padding-right:62px}.sales-carousel__controls>span{max-width:175px}.sales-carousel__controls button{width:44px;height:44px}}

/* Cabecera móvil centrada, búsqueda general y lista local de cotización. */
.header-actions{display:none;align-items:center;gap:2px}.header-icon{position:relative;display:grid;width:43px;height:43px;padding:9px;place-items:center;color:var(--ink);border:0;background:transparent}.header-icon svg,.site-search svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.header-icon:hover{color:var(--blue)}.cart-count{position:absolute;top:2px;right:1px;display:grid;min-width:18px;height:18px;padding:0 4px;place-items:center;color:#fff;border:2px solid #fff;border-radius:999px;background:#e43535;font-size:.61rem;font-weight:900}.cart-count[hidden]{display:none}.sales-card__actions{display:grid;grid-template-columns:1fr;gap:9px}.button--quote{color:var(--ink);border-color:#a9bbc6;background:#fff}.button--quote:hover{color:#fff;border-color:var(--blue);background:var(--blue)}
.tool-layer{position:fixed;z-index:150;inset:0;display:flex}.tool-layer[hidden]{display:none!important}.tool-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(2,13,24,.62);backdrop-filter:blur(3px)}body.tool-panel-open{overflow:hidden}.search-panel,.cart-panel{position:relative;z-index:1;color:var(--ink);background:#fff;box-shadow:0 25px 80px rgba(0,0,0,.3)}.search-panel{width:min(760px,calc(100% - 32px));max-height:min(720px,calc(100dvh - 50px));margin:25px auto auto;padding:28px;overflow:auto;border-radius:20px}.cart-panel{width:min(440px,100%);height:100dvh;margin-left:auto;padding:30px;overflow:auto}.tool-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.tool-panel__head small{color:var(--cyan);font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.tool-panel__head h2{margin:4px 0 0;font-size:clamp(1.55rem,4vw,2.35rem);line-height:1.08}.tool-close{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;color:var(--ink);border:1px solid var(--line);border-radius:50%;background:#fff;font-size:1.7rem;line-height:1}.site-search{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:center;padding:13px 16px;border:1px solid #b9c9d2;border-radius:12px}.site-search:focus-within{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,167,191,.1)}.site-search input{min-width:0;padding:0;border:0;outline:0;background:transparent;font-size:1rem}.search-results{display:grid;gap:8px;margin-top:18px}.search-results>p{margin:0;padding:25px;color:var(--muted);background:var(--mist);text-align:center}.search-results a{display:grid;padding:15px 17px;border:1px solid var(--line);border-radius:10px;transition:border-color .2s,background .2s}.search-results a:hover{border-color:#a9d4df;background:#f5fbfc}.search-results small{color:var(--cyan);font-size:.63rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.search-results strong{margin:2px 0;font-size:.95rem}.search-results span{overflow:hidden;color:var(--muted);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.cart-intro{margin:-8px 0 24px;color:var(--muted);font-size:.86rem}.cart-items{display:grid;gap:10px}.cart-item{display:grid;grid-template-columns:1fr 34px;gap:15px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:12px}.cart-item small,.cart-item strong,.cart-item span{display:block}.cart-item small{color:var(--cyan);font-size:.64rem;font-weight:900;text-transform:uppercase}.cart-item strong{margin:3px 0;font-size:.9rem;line-height:1.25}.cart-item span{color:var(--muted);font-size:.7rem}.cart-item button{display:grid;width:32px;height:32px;place-items:center;color:#b52c34;border:1px solid #f0cbd0;border-radius:50%;background:#fff;font-size:1.2rem}.cart-empty{padding:30px 20px;color:var(--muted);border:1px dashed #bfd0d8;border-radius:12px;background:var(--mist);text-align:center}.cart-empty strong{display:block;color:var(--ink)}.cart-empty p{margin:6px 0 15px;font-size:.8rem}.cart-empty a{color:var(--blue);font-size:.8rem;font-weight:900}.cart-submit{width:100%;margin-top:20px;text-align:center}.cart-submit[hidden],.cart-clear[hidden]{display:none}.cart-clear{display:block;margin:14px auto 0;padding:7px;color:var(--muted);border:0;background:transparent;font-size:.76rem;text-decoration:underline}
@media(max-width:1020px){.nav-inner{position:relative}.brand{position:absolute;z-index:52;left:50%;width:180px;transform:translateX(-50%)}.menu-toggle{order:-1;margin-right:auto}.header-actions{z-index:55;display:flex;margin-left:auto}.nav-wrap.is-sticky .brand{position:absolute}.site-nav{z-index:140}.menu-toggle{z-index:145}.menu-toggle.is-open{position:fixed;top:47px;left:15px}.tool-layer{z-index:180}}
@media(max-width:760px){.brand{width:165px}.header-icon{width:39px;height:39px;padding:8px}.header-icon svg{width:23px}.cart-panel{padding:24px 18px}.search-panel{width:calc(100% - 20px);max-height:calc(100dvh - 20px);margin:10px auto;padding:22px 16px;border-radius:16px}.tool-panel__head{margin-bottom:18px}.search-results span{white-space:normal}.sales-card__actions{gap:8px}}
@media(max-width:380px){.brand{width:145px}.header-actions{gap:0}.header-icon{width:36px;height:38px;padding:7px}.menu-toggle{width:40px;padding-inline:7px}}

/* Bloque editorial configurable para separar y presentar secciones de la portada. */
.home-text-block{padding:clamp(72px,8vw,118px) 0;background:#fff}.home-text-block__inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);gap:clamp(42px,8vw,120px);align-items:end}.home-text-block__statement h2{max-width:780px;margin:10px 0 30px;color:var(--ink);font-size:clamp(2.45rem,5.2vw,5.35rem);line-height:.98;letter-spacing:-.055em;text-wrap:balance}.home-text-block__statement h2 span{display:block;color:var(--cyan)}.home-text-block__copy{padding:0 0 10px;border-bottom:2px solid var(--lime)}.home-text-block__copy p{margin:0 0 24px;color:#263f50;font-size:clamp(1.08rem,1.55vw,1.4rem);line-height:1.65}.home-text-block--accent{background:var(--mist)}.home-text-block--accent .home-text-block__statement h2 span{color:var(--blue)}.home-text-block--dark{color:#fff;background:var(--ink)}.home-text-block--dark .home-text-block__statement h2{color:#fff}.home-text-block--dark .home-text-block__statement h2 span{color:var(--lime)}.home-text-block--dark .home-text-block__copy{border-color:var(--cyan)}.home-text-block--dark .home-text-block__copy p{color:#c4d2dc}
@media(max-width:760px){.home-text-block{padding:68px 0}.home-text-block__inner{grid-template-columns:1fr;gap:38px}.home-text-block__statement h2{margin-bottom:26px;font-size:clamp(2.35rem,11.5vw,4rem)}.home-text-block__copy{padding-bottom:22px}.home-text-block__copy p{font-size:1.05rem;line-height:1.6}.home-text-block .button{width:auto;max-width:100%}}

/* Organización móvil editorial: video destacado, blog horizontal y pie desplegable. */
.home-media__toggle{position:absolute;z-index:4;right:18px;bottom:18px;display:grid;width:52px;height:52px;place-items:center;color:var(--ink);border:0;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 8px 25px rgba(0,0,0,.2);font-size:1rem;font-weight:900}.home-media__toggle:hover{background:#fff}.insight-card__visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.insight-card__visual>small{position:absolute;z-index:2;top:16px;left:16px;padding:7px 12px;color:#fff;border-radius:999px;background:rgba(4,17,30,.86);font-size:.65rem;font-weight:800;letter-spacing:.04em}.insight-card__visual:has(img)::before,.insight-card__visual:has(img)::after{display:none}.insights-controls{display:none}.footer-accordion__toggle{display:block;width:100%;padding:0;color:inherit;border:0;background:transparent;font:inherit;text-align:left}.footer-accordion__toggle b{display:none}.footer-accordion__body{display:block}
@media(max-width:760px){.home-media{padding:55px 0;background:#fff}.home-media__grid{position:relative;display:block}.home-media__visual{min-height:620px;border-radius:22px}.home-media__visual::before{position:absolute;z-index:1;inset:0;content:"";background:linear-gradient(0deg,rgba(3,14,24,.9),rgba(3,14,24,.15) 72%)}.home-media__visual::after{z-index:2;border-color:rgba(255,255,255,.12);border-radius:22px}.home-media__copy{position:absolute;z-index:3;right:0;bottom:0;left:0;display:flex;min-height:100%;flex-direction:column;justify-content:flex-end;padding:38px 34px 105px;color:#fff;pointer-events:none}.home-media__copy .section-kicker{color:var(--lime)}.home-media__copy .section-title{max-width:550px;margin-bottom:0;color:#fff;font-size:clamp(2.5rem,12vw,4.2rem);line-height:.98}.home-media__copy>p:not(.section-kicker){max-width:540px;margin:20px 0 25px;color:#e0e8ed;font-size:1rem}.home-media__copy .button{width:fit-content;color:#fff;border-color:rgba(255,255,255,.65);background:rgba(4,17,30,.58);pointer-events:auto}.home-media__toggle{right:20px;bottom:20px}.insights .section-heading{margin-bottom:30px}.insights-grid{display:grid;grid-auto-flow:column;grid-auto-columns:min(86vw,360px);grid-template-columns:none;gap:16px;margin:0 -15px;padding:0 15px 14px;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;scroll-padding-inline:15px;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;scrollbar-width:none}.insights-grid::-webkit-scrollbar{display:none}.insight-card{display:grid;min-height:610px;grid-template-columns:1fr;grid-template-rows:285px minmax(0,1fr);scroll-snap-align:start;scroll-snap-stop:always}.insight-card:hover{transform:none}.insight-card__visual{min-height:0}.insight-card__body{min-height:320px;padding:24px}.insight-card__body h3{font-size:1.45rem}.insight-card__body>span{line-height:1.6}.insights-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px}.insights-controls span{color:var(--muted);font-size:.75rem;font-weight:700}.insights-controls button{display:grid;width:45px;height:45px;flex:0 0 auto;place-items:center;color:#fff;border:0;border-radius:50%;background:var(--ink)}.insights-controls button:disabled{opacity:.28}.insights-controls svg{width:21px;fill:none;stroke:currentColor;stroke-width:2}.site-footer{padding-top:48px}.footer-grid{grid-template-columns:1fr;gap:0}.footer-grid>div{grid-column:1!important}.footer-grid>div:first-child{padding-bottom:34px}.footer-accordion{border-top:1px solid rgba(255,255,255,.13)}.footer-accordion:last-child{border-bottom:1px solid rgba(255,255,255,.13)}.footer-grid .footer-accordion h2{margin:0}.footer-accordion__toggle{display:flex;align-items:center;justify-content:space-between;padding:20px 0;color:#fff;font-size:.82rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.footer-accordion__toggle b{display:block;font-size:1.35rem;font-weight:400;transition:transform .2s}.footer-accordion.is-open .footer-accordion__toggle b{transform:rotate(180deg)}.footer-accordion__body{display:none;padding:0 0 18px}.footer-accordion.is-open .footer-accordion__body{display:block}.footer-bottom{margin-top:36px}}
@media(max-width:380px){.home-media__visual{min-height:570px}.home-media__copy{padding:32px 24px 98px}.insights-grid{grid-auto-columns:88vw}.insight-card{min-height:590px}}

/* Espaciado configurable de las secciones de la portada. */
main[data-section-spacing="compact"]{--home-section-y:clamp(48px,4.5vw,68px)}main[data-section-spacing="balanced"]{--home-section-y:clamp(68px,7vw,96px)}main[data-section-spacing="spacious"]{--home-section-y:clamp(88px,9vw,126px)}main[data-section-spacing]>.section,main[data-section-spacing]>.home-text-block,main[data-section-spacing]>.home-course-cta,main[data-section-spacing]>.contact{padding-top:var(--home-section-y);padding-bottom:var(--home-section-y)}main[data-section-spacing]>.project-showcase-section{padding-top:var(--home-section-y);padding-bottom:var(--home-section-y)}
@media(max-width:760px){main[data-section-spacing="compact"]{--home-section-y:40px}main[data-section-spacing="balanced"]{--home-section-y:58px}main[data-section-spacing="spacious"]{--home-section-y:76px}}

/* Publicaciones locales: portada, contenido, video, autor, referencias y artículos relacionados. */
.article-detail-page main{background:#fff}.article-hero{position:relative;display:grid;min-height:clamp(500px,62vw,720px);align-items:end;overflow:hidden;color:#fff;background:linear-gradient(135deg,#071a2d,#0b5d88)}.article-hero__media,.article-hero__media img,.article-hero__shade{position:absolute;inset:0;width:100%;height:100%}.article-hero__media img{object-fit:cover}.article-hero__media--placeholder{background:radial-gradient(circle at 75% 20%,rgba(0,167,191,.32),transparent 35%),linear-gradient(140deg,#0b5d88,#071a2d 64%)}.article-hero__shade{background:linear-gradient(0deg,rgba(2,13,24,.92),rgba(2,13,24,.15) 72%),linear-gradient(90deg,rgba(2,13,24,.55),transparent 70%)}.article-hero__content{position:relative;z-index:2;padding-top:150px;padding-bottom:clamp(55px,7vw,92px)}.article-hero .section-kicker{color:var(--lime)}.article-meta{display:flex;gap:0;flex-wrap:wrap;margin:15px 0 22px;color:#d9e5ec;font-size:.78rem;font-weight:700}.article-meta span:not(:empty)+span:not(:empty)::before{margin:0 11px;content:"·";color:var(--lime)}.article-hero h1{max-width:980px;margin:0;color:#fff;font-size:clamp(2.7rem,6vw,6rem);line-height:.97;letter-spacing:-.055em;text-wrap:balance}.article-hero__content>p:last-child{max-width:770px;margin:25px 0 0;color:#e3ebf0;font-size:clamp(1rem,1.6vw,1.3rem);line-height:1.6}.article-shell{display:grid;grid-template-columns:100px minmax(0,820px);gap:clamp(35px,6vw,85px);justify-content:center;padding-top:clamp(58px,7vw,100px);padding-bottom:clamp(70px,8vw,115px)}.article-main{min-width:0}.article-share{position:relative}.article-share>span{display:block;margin-bottom:12px;color:var(--muted);font-size:.65rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.article-share>div{position:sticky;top:115px;display:grid;gap:9px}.article-share a{display:grid;width:42px;height:42px;place-items:center;color:var(--ink);border:1px solid var(--line);border-radius:50%;background:#fff;font-size:.72rem;font-weight:900;text-transform:uppercase}.article-share a:hover{color:#fff;border-color:var(--blue);background:var(--blue)}.article-video{margin:0 0 clamp(42px,6vw,70px)}.article-video>div{position:relative;overflow:hidden;padding-top:56.25%;border-radius:18px;background:#061522;box-shadow:var(--shadow)}.article-video iframe,.article-video video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:contain}.article-video figcaption{margin-top:12px;color:var(--muted);font-size:.76rem}.article-lead{margin:0 0 35px;padding-left:23px;color:var(--ink);border-left:4px solid var(--lime);font-size:clamp(1.25rem,2vw,1.65rem);font-weight:650;line-height:1.55}.article-prose{color:#243b4a;font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.86}.article-prose h2{margin:60px 0 18px;color:var(--ink);font-size:clamp(1.75rem,3.4vw,2.65rem);line-height:1.12;letter-spacing:-.035em}.article-prose h3{margin:40px 0 14px;color:var(--ink);font-size:1.4rem;line-height:1.25}.article-prose p{margin:0 0 27px}.article-prose ul{display:grid;gap:10px;margin:0 0 30px;padding-left:22px}.article-prose li::marker{color:var(--lime)}.article-prose blockquote{margin:45px 0;padding:28px 32px;color:#fff;border-radius:14px;background:var(--ink);font-size:clamp(1.15rem,2vw,1.45rem);font-weight:650;line-height:1.55}.article-key-points{margin:50px 0;border:1px solid var(--line);border-radius:14px;background:var(--mist)}.article-key-points summary{padding:21px 24px;color:var(--ink);font-weight:900;cursor:pointer}.article-key-points ul{display:grid;gap:9px;margin:0;padding:0 30px 25px 45px;color:#334c5c}.article-key-points li::marker{color:var(--cyan)}.article-references{margin-top:55px;padding-top:35px;border-top:1px solid var(--line)}.article-references h2{margin:0 0 18px;font-size:1.45rem}.article-references ul{display:grid;gap:10px;margin:0;padding-left:20px}.article-references a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.article-author{display:grid;grid-template-columns:140px 1fr;gap:28px;align-items:center;margin-top:65px;padding:32px;border-radius:18px;background:var(--mist)}.article-author__photo{display:grid;width:140px;height:140px;place-items:center;overflow:hidden;color:#fff;border-radius:50%;background:var(--blue);font-size:2rem;font-weight:900}.article-author__photo img{width:100%;height:100%;object-fit:cover}.article-author .section-kicker{margin-bottom:4px}.article-author h2{margin:0;font-size:1.55rem}.article-author__role{margin:3px 0 10px;color:var(--blue);font-weight:800}.article-author p:not(.section-kicker):not(.article-author__role){margin:0;color:var(--muted);font-size:.88rem}.article-author .button{display:inline-flex;margin-top:18px}.article-author .button[hidden]{display:none}.article-related{background:var(--mist)}.article-related .section-heading>a{color:var(--blue);font-size:.8rem;font-weight:900}.article-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.article-related__grid article{padding-bottom:22px;background:#fff}.article-related__image{display:grid;height:230px;place-items:center;overflow:hidden;color:#fff;background:var(--blue);font-size:1.5rem;font-weight:900}.article-related__image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.article-related__image:hover img{transform:scale(1.035)}.article-related__grid small,.article-related__grid h3,.article-related__grid p{display:block;margin-right:22px;margin-left:22px}.article-related__grid small{margin-top:20px;color:var(--cyan);font-size:.65rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.article-related__grid h3{margin-top:7px;margin-bottom:10px;font-size:1.22rem;line-height:1.25}.article-related__grid p{margin-top:0;color:var(--muted);font-size:.8rem}.article-not-found{display:grid;min-height:62vh;align-items:center;padding:100px 0;background:var(--mist)}.article-not-found h1{margin:7px 0 12px;font-size:clamp(2.4rem,6vw,5rem);line-height:1}.article-not-found p{margin:0 0 28px;color:var(--muted)}
@media(max-width:900px){.article-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.article-hero{min-height:650px}.article-hero__content{padding-top:165px;padding-bottom:48px}.article-hero h1{font-size:clamp(2.65rem,13vw,4.4rem)}.article-hero__content>p:last-child{font-size:1rem}.article-meta{display:grid;gap:4px}.article-meta span:not(:empty)+span:not(:empty)::before{margin:0;content:""}.article-shell{grid-template-columns:1fr;gap:35px;padding-top:48px}.article-share{order:2}.article-share>span{margin-bottom:10px}.article-share>div{position:static;display:flex}.article-main{order:1}.article-video{margin-bottom:38px}.article-video>div{margin:0 -15px;border-radius:0}.article-lead{font-size:1.22rem}.article-prose{font-size:1rem}.article-prose h2{margin-top:48px}.article-prose blockquote{margin:36px 0;padding:24px}.article-author{grid-template-columns:1fr;padding:26px}.article-author__photo{width:105px;height:105px}.article-related .section-heading{display:grid;gap:10px}.article-related__grid{grid-auto-flow:column;grid-auto-columns:min(84vw,340px);grid-template-columns:none;margin:0 -15px;padding:0 15px 12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:15px;scrollbar-width:none}.article-related__grid article{scroll-snap-align:start}.article-related__grid::-webkit-scrollbar{display:none}}
.article-cover-caption{margin-top:12px;margin-bottom:-30px;color:var(--muted);font-size:.72rem}.article-template--research .article-lead{border-color:var(--cyan)}.article-template--research .article-key-points{border-left:4px solid var(--cyan)}.article-template--brief .article-hero{min-height:500px}.article-template--brief .article-shell{grid-template-columns:90px minmax(0,700px)}.article-template--brief .article-prose{font-size:1.05rem}
@media(max-width:760px){.article-cover-caption{margin-bottom:-20px}.article-template--brief .article-hero{min-height:570px}.article-template--brief .article-shell{grid-template-columns:1fr}}

/* Llamadas a cotización configurables por servicio. */
.service-card__cta-wrap{display:grid;gap:7px;margin-top:auto;padding-top:24px}.service-card__cta-wrap>small{color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.service-card__cta{display:flex;min-height:46px;align-items:center;justify-content:space-between;gap:14px;padding:11px 16px;color:#fff;border-radius:999px;background:var(--ink);font-size:.8rem;font-weight:900;transition:background .2s,transform .2s}.service-card__cta:hover{background:var(--blue);transform:translateY(-1px)}.service-card__cta span{color:var(--lime);font-size:1.05rem}.service-card__legacy-link{display:inline-flex;margin-top:auto;padding-top:20px;color:var(--blue);font-size:.85rem;font-weight:800}.service-card--accent .service-card__cta-wrap>small{color:#cfe0ea}.service-card--accent .service-card__cta{color:var(--ink);background:var(--lime)}.service-card--accent .service-card__cta span{color:var(--ink)}
@media(max-width:760px){.service-card__cta{width:100%}.service-card__cta-wrap{padding-top:20px}}
