/* Focused home refinements; retain the existing company content and identity. */
.hero-section{padding-top:calc(var(--header-height) + 65px);padding-bottom:72px;min-height:auto}
.hero-container{grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.hero-content .hero-title{font-size:clamp(2.3rem,4vw,3.4rem);line-height:1.13;letter-spacing:-1.8px}
.hero-content .hero-subtitle{font-size:1rem;line-height:1.8}
.hero-image-wrapper{margin:0;position:relative;border-radius:10px;overflow:hidden;align-self:start;width:100%}
.hero-visual{display:block;width:100%;max-width:none;aspect-ratio:4/4.5;object-fit:cover;object-position:64% 43%;border:0;border-radius:10px;box-shadow:none}
.hero-visual.ecosystem-hero-visual{aspect-ratio:16/10;object-position:center;background:#0c0e12}
.hero-image-wrapper figcaption{position:absolute;bottom:0;left:0;right:0;padding:55px 24px 24px;background:linear-gradient(transparent,rgba(7,17,23,.92));color:#fff;z-index:3;font-size:14px;font-weight:600}
.hero-image-wrapper figcaption span{display:block;font-size:11px;font-weight:400;opacity:.75;margin-top:5px}
.hero-image-wrapper figcaption img{width:24px;height:24px;object-fit:contain;vertical-align:middle;margin-right:9px}
.hero-image-wrapper .image-glow{display:none}
.home-product-carousel{display:block;width:100%;background:transparent;border:0;box-shadow:none;padding:0;user-select:none}
.home-carousel-stage{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:10px;background:#f4f7fb;cursor:pointer}
.home-carousel-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s ease}
.home-carousel-slide.is-active{opacity:1;visibility:visible}
.home-carousel-slide img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.home-carousel-slide:last-of-type img{object-fit:cover}
.home-carousel-watermark{position:absolute;z-index:2;right:12px;bottom:10px;width:38px;height:38px;object-fit:contain;opacity:.28;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(255,255,255,.65))}
.home-carousel-meta{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.home-carousel-stage:focus-visible{outline:2px solid #2ccee9;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.home-carousel-slide{transition:none}}
.sector-line-icon{width:29px;height:29px;display:block;color:#a8cbb9}
.card-icon-img{filter:none!important}
.home-sector-card{background:#152327!important;border-color:#ffffff20!important;border-radius:6px!important}
.home-sector-card:hover{border-color:#a8cbb9!important;transform:translateY(-3px)}
.home-sector-card>span{color:#b4d2c1!important}
.rubros-section .container>div:has(>.home-sector-card){grid-template-columns:repeat(3,minmax(0,1fr))!important}
.hero-image-wrapper{order:0}
@media(max-width:900px){.hero-container{gap:32px}.hero-title{font-size:clamp(2rem,4vw,3.2rem)}.hero-image-wrapper{width:100%;transform:none}}
@media(min-width:1100px){.hero-image-wrapper{width:calc(100% + 30px);transform:translateY(16px)}}
@media(max-width:768px){.hero-section{padding-top:calc(var(--header-height) + 32px);padding-bottom:48px}.hero-container{grid-template-columns:1fr}.hero-image-wrapper{width:100%;max-width:520px;margin-inline:auto;transform:none}.hero-visual{aspect-ratio:4/4.3;object-position:64% 40%}.hero-visual.ecosystem-hero-visual{aspect-ratio:16/10;object-position:center}.hero-image-wrapper figcaption{padding:45px 20px 20px}}
@media(max-width:768px){.rubros-section .container>div:has(>.home-sector-card){grid-template-columns:1fr!important}.header-container{gap:12px}.header .logo-icon{height:38px!important}.header .logo-title{font-size:13px;white-space:nowrap}.header .logo-subtitle{display:none}.header .logo-group{gap:9px}.header .btn{padding:10px 12px;font-size:11px}.header .header-cta{flex-shrink:0}.contact-container{grid-template-columns:minmax(0,1fr)}.contact-info,.contact-card{min-width:0}.section-num{overflow-wrap:anywhere;white-space:normal}.hero-content{order:0}.hero-image-wrapper{order:1}.glow-orb{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Editorial presentation for the two ways Flow Digital Labs works. */
.method-section .section-header{max-width:850px;margin-bottom:46px}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.service-card{display:flex;flex-direction:column;min-width:0;padding:38px;border:1px solid rgba(198,221,230,.18);border-radius:12px;background:#151e29;box-shadow:0 18px 50px rgba(0,0,0,.12)}
.service-card-products{background:linear-gradient(145deg,#172633,#131c27)}
.service-card-consulting{background:linear-gradient(145deg,#201d2b,#151b27)}
.service-card-top{display:flex;align-items:center;justify-content:space-between;min-height:84px;margin-bottom:24px}
.service-card-top img{width:84px;height:84px;object-fit:contain;flex-shrink:0}
.service-kicker{color:#91dce9;font-size:.85rem;font-weight:700;letter-spacing:.02em}
.service-card-consulting .service-kicker{color:#cab8e9}
.service-card h3{font-size:clamp(1.55rem,2.2vw,2.1rem);line-height:1.18;letter-spacing:-.04em;max-width:430px;margin:0 0 16px}
.service-card>p{max-width:520px;margin:0 0 30px;color:#b4c0c9;font-size:1rem;line-height:1.7}
.service-details{border-top:1px solid rgba(255,255,255,.12);padding-top:23px;margin-top:auto}
.service-details>span{display:block;color:#e7eef1;font-size:.8rem;font-weight:700;margin-bottom:13px}
.service-details ul{list-style:none;padding:0;margin:0 0 28px}
.service-details li{position:relative;padding:8px 0 8px 20px;color:#b8c5ce;font-size:.9rem;line-height:1.5}
.service-details li:before{content:"";position:absolute;left:0;top:18px;width:7px;height:7px;border-radius:50%;background:#60cbd8}
.service-card-consulting .service-details li:before{background:#bda6e4}
.service-card .select-service-btn{align-self:flex-start;border-color:rgba(224,240,245,.26);background:transparent;color:#fff;box-shadow:none;font-family:var(--font-body);font-size:.85rem}
.service-card .select-service-btn:hover{background:#fff;color:#111a25;border-color:#fff}
.service-afterword{margin:26px 0 0;color:#a9b6c1;font-size:.9rem;line-height:1.6}
.service-afterword a{color:#8ed9e8;text-underline-offset:4px}
.symphony-visualizer-card{padding:16px}
.visualizer-stage{margin-top:0;max-height:none}
.hero-actions .btn{min-height:50px;padding:13px 20px;font-size:.9rem;white-space:nowrap}
.rubros-section .section-header{position:relative;isolation:isolate}
.rubros-section .section-header::before{content:"";position:absolute;z-index:-1;top:-25px;left:50%;width:290px;aspect-ratio:1;transform:translateX(-50%);background:url("Imagen/core-watermark.svg") center/contain no-repeat;opacity:.15;pointer-events:none}
@media(max-width:800px){.service-grid{grid-template-columns:1fr}.service-card{padding:30px}}
@media(max-width:480px){.service-card{padding:25px}.service-card .select-service-btn{width:100%}.rubros-section .section-header::before{top:-10px;width:170px;opacity:.12}.hero-actions .btn{font-size:.84rem;padding-inline:14px}.home-carousel-watermark{width:28px;height:28px;right:8px;bottom:7px}}
