/* Acabado de la portada pública. Conserva los colores y contenidos del gestor. */
.company-page{--muted:#536b7c;background:var(--site-background,#f8fbfd)}
.company-page .company-top{background:var(--site-text,#133e57);color:#fff;padding-block:11px}
.company-page .company-top a{color:#fff}
.company-page .site-header{padding-block:22px;gap:28px}
.company-page .site-header nav{gap:28px}
.company-page .site-header .system-access{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;font-size:13px;font-weight:600;color:var(--blue);white-space:nowrap;min-height:44px}
.company-page .site-header .system-access:hover{background:var(--site-soft,#eff8fd);border-color:var(--blue);text-decoration:none}
.company-page .system-access i{font-size:18px}
.company-page .brand-subtitle{letter-spacing:2.4px}
.company-page .button{border-radius:12px;min-height:48px;box-shadow:0 6px 18px #123e5712;transition:transform .2s,box-shadow .2s}
.company-page .button:hover{transform:translateY(-2px);box-shadow:0 10px 24px #123e5720}
.company-page .company-hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);min-height:590px;margin-top:8px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,#fff,var(--site-soft,#eff8fd));box-shadow:0 20px 60px #133e5709}
.company-page .hero-copy{padding:52px 42px}
.company-page .hero-copy .eyebrow{font-size:10px;letter-spacing:1.6px;line-height:1.7}
.company-page h1{font-size:clamp(40px,4.5vw,62px);font-weight:650;line-height:1.08;letter-spacing:-2.5px}
.company-page h1 em{display:inline-block}
.company-page .hero-description{font-size:16px;line-height:1.85;margin-bottom:30px}
.company-page .hero-note{margin-top:30px;font-size:12px;padding-top:22px;border-top:1px solid var(--line)}
.company-page .hero-note>i{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:14px;background:#fff}
.company-page .hero-photo{min-height:590px;border-radius:24px;margin:12px 12px 12px 0;isolation:isolate}
.company-page .hero-slide img{object-position:center;transition:opacity .65s ease}
.company-page .hero-slide:after{inset:28% 0 0;background:linear-gradient(180deg,transparent,rgba(10,36,53,.18) 35%,rgba(10,36,53,.88))}
.company-page .hero-slide.is-poster{background:var(--site-soft,#eff8fd)}
.company-page .hero-slide.is-poster:after{inset:58% 0 0}
.company-page .hero-slide.is-poster img{padding:20px 20px 170px}
.company-page .hero-carousel .slide-caption{left:30px;right:30px;bottom:104px}
.company-page .slide-caption h2{font-size:clamp(24px,2.7vw,34px);line-height:1.2;letter-spacing:-1px}
.company-page .slide-caption p{line-height:1.6;font-size:14px}
.company-page .carousel-toolbar{left:24px;right:24px;bottom:22px;padding:8px 10px;background:#ffffffed;color:#133e57;border:1px solid #ffffff90;box-shadow:0 6px 24px #071f3526;border-radius:14px;gap:8px}
.company-page .carousel-toolbar button{min-width:40px;min-height:40px}
.company-page .carousel-toolbar button:hover{background:#0369a112}
.company-page .slide-dots{gap:2px;overflow-x:auto;min-width:0}
.company-page .slide-dots button{min-width:24px;flex-shrink:0}
.company-page .slide-dots button:after{background:#133e5740}
.company-page .slide-dots button[aria-current=true]:after{background:var(--blue)}
.company-page .slide-counter{font-size:11px;color:#536b7c}
.company-page .care-strip{padding-block:30px;border-bottom:1px solid var(--line)}
.company-page .care-strip>div{font-size:13px;font-weight:500;gap:14px}
.company-page .care-strip i{display:grid;place-items:center;width:46px;height:46px;flex-shrink:0;border-radius:50%;background:var(--site-soft,#eff8fd);font-size:22px}
.company-page .company-section{padding-block:80px}
.company-page .company-heading{margin-bottom:32px;gap:32px}
.company-page .company-heading>p{font-size:15px;line-height:1.85}
.company-page h2{font-weight:600;letter-spacing:-1.4px}
.company-page .company-cards{gap:18px}
.company-page .company-card{background:#fff;border-radius:20px;padding:28px 24px;box-shadow:0 4px 16px #133e5703;transition:transform .2s,box-shadow .2s,border-color .2s}
.company-page .company-card:hover{transform:translateY(-6px);border-color:var(--blue);box-shadow:0 16px 32px #133e5710}
.company-page .card-top>i{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:var(--site-soft,#eff8fd);font-size:26px}
.company-page .card-top>span{font-size:12px;color:#627b8c}
.company-page .company-card h3{font-size:22px;margin-top:28px}
.company-page .company-card p{font-size:14px;line-height:1.75;margin-bottom:28px}
.company-page .card-link{padding-top:18px;border-top:1px solid var(--line);font-size:13px;align-items:center;gap:12px}
.company-page .card-link i{display:grid;place-items:center;border-radius:50%;width:28px;height:28px;background:var(--site-soft,#eff8fd)}
.company-page .all-services{font-size:14px;margin-top:32px;min-height:44px;text-decoration:underline;text-underline-offset:6px}
.company-page .company-about{border:1px solid var(--line);border-radius:26px;background:#fff;grid-template-columns:.85fr 1.15fr}
.company-page .about-brand{background:radial-gradient(ellipse at 50% 35%,#fff 0%,var(--site-soft,#e4f3fc) 75%);min-height:420px}
.company-page .about-brand img{width:120px;height:136px;filter:drop-shadow(0 12px 14px #133e5712)}
.company-page .about-brand>span{font-size:34px}
.company-page .company-about>div:last-child{padding:48px}
.company-page .company-about h2{font-size:clamp(28px,3vw,38px)}
.company-page .company-about p:not(.eyebrow){font-size:15px}
.company-page .about-values{gap:15px;font-size:14px;border-top:1px solid var(--line);padding-top:24px}
.company-page .company-faq{grid-template-columns:.85fr 1.15fr;gap:64px}
.company-page .company-faq>div>p{font-size:15px}
.company-page .faq-list{display:flex;flex-direction:column;gap:12px;min-width:0}
.company-page .faq-list details{background:#fff;border:1px solid var(--line);padding:0;border-radius:16px;overflow:hidden}
.company-page .faq-list details[open]{border-color:#97bdcf;box-shadow:0 6px 24px #133e5706}
.company-page .faq-list summary{padding:22px 24px;font-size:15px;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}
.company-page .faq-list summary::-webkit-details-marker{display:none}
.company-page .faq-list summary:after{content:'+';font-size:24px;font-weight:400;color:var(--blue);flex-shrink:0}
.company-page .faq-list details[open] summary:after{content:'−'}
.company-page .faq-list summary:focus-visible{outline:3px solid var(--blue);outline-offset:-4px;border-radius:16px}
.company-page .faq-list p{padding:0 24px 24px;margin:0;font-size:14px;line-height:1.85}
.company-page .company-banner{padding:46px 42px;border-radius:24px;background:linear-gradient(115deg,var(--site-text,#133e57),var(--site-primary,#0369a1));box-shadow:0 16px 36px #133e5712}
.company-page .company-banner h2{font-size:32px}
.company-page .company-banner .button-light{color:#133e57;background:#fff}
.company-page .company-banner .button-light:hover{background:#eaf6ff}
.company-page .company-footer{padding-block:32px 44px;line-height:1.8}
.company-page .company-footer>p,.company-page .company-footer nav{font-size:13px}
@media(max-width:1000px){
  .company-page .site-header{flex-wrap:wrap}
  .company-page .hero-copy{padding:36px 28px}
  .company-page h1{font-size:46px}
  .company-page .company-about>div:last-child{padding:32px}
  .company-page .company-faq{gap:32px}
  .company-page .company-banner{flex-wrap:wrap}
}
@media(max-width:700px){
  .company-page .site-header nav{flex-wrap:wrap;gap:12px 18px}
  .company-page .site-header .system-access{font-size:12px;padding:9px 12px}
  .company-page .company-hero{grid-template-columns:minmax(0,1fr);margin:8px 20px 0;border-radius:24px}
  .company-page .hero-copy{padding:34px 24px 28px}
  .company-page h1{font-size:clamp(36px,8vw,48px);letter-spacing:-1.8px}
  .company-page .hero-description{font-size:15px}
  .company-page .hero-note{margin-top:24px;padding-top:18px}
  .company-page .hero-photo{margin:0 10px 10px;border-radius:18px;min-height:420px}
  .company-page .hero-carousel .slide-caption{left:22px;right:22px;bottom:100px}
  .company-page .carousel-toolbar{left:14px;right:14px;bottom:16px;gap:4px;padding:6px}
  .company-page .care-strip{padding-block:14px;grid-template-columns:1fr}
  .company-page .care-strip>div{justify-content:start;padding:14px 0;font-size:13px}
  .company-page .care-strip>div+div{border-left:0;border-top:1px solid var(--line)}
  .company-page .company-section{padding-block:48px}
  .company-page .company-card{padding:22px 18px;border-radius:16px}
  .company-page .company-card h3{font-size:20px}
  .company-page .company-card p{font-size:13px}
  .company-page .company-about{grid-template-columns:minmax(0,1fr);border-radius:22px}
  .company-page .about-brand{min-height:290px;padding:32px}
  .company-page .about-brand img{width:88px;height:100px}
  .company-page .company-about>div:last-child{padding:30px 24px}
  .company-page .company-faq{grid-template-columns:minmax(0,1fr);gap:24px}
  .company-page .faq-list summary{padding:20px;font-size:14px}
  .company-page .faq-list p{padding:0 20px 20px}
  .company-page .company-banner{padding:32px 24px;gap:24px}
  .company-page .company-banner h2{font-size:28px}
  .company-page .company-banner .button{white-space:normal;text-align:left;font-size:13px}
}
@media(max-width:420px){
  .company-page .company-cards{grid-template-columns:minmax(0,1fr)}
  .company-page .company-card h3 br{display:none}
  .company-page .site-header nav{gap:12px;flex-wrap:wrap}
  .company-page .hero-photo{min-height:390px}
  .company-page .company-top{padding-inline:20px}
}
/* Controles sobre la imagen, sin una barra que cubra el carrusel. */
.company-page .hero-carousel .carousel-toolbar{inset:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;display:block;pointer-events:none;color:#fff}
.company-page .hero-carousel .carousel-toolbar[hidden]{display:none}
.company-page .hero-carousel .carousel-toolbar button{pointer-events:auto;background:rgba(10,36,53,.48);border:1px solid #ffffff65;min-width:44px;min-height:44px;transition:background .2s}
.company-page .hero-carousel .carousel-toolbar button:hover{background:rgba(10,36,53,.8)}
.company-page .hero-carousel .slide-prev,.company-page .hero-carousel .slide-next{position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 12px #0002}
.company-page .hero-carousel .slide-prev{left:14px}
.company-page .hero-carousel .slide-next{right:14px}
.company-page .hero-carousel .slide-dots{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);max-width:calc(100% - 140px);margin:0;gap:0;pointer-events:auto}
.company-page .hero-carousel .slide-dots button{min-width:28px;min-height:44px;border:0;background:none;flex-shrink:0}
.company-page .hero-carousel .slide-dots button:hover{background:#ffffff20}
.company-page .hero-carousel .slide-dots button:after{background:#ffffff80;box-shadow:0 1px 4px #0005}
.company-page .hero-carousel .slide-dots button[aria-current=true]:after{background:#fff}
.company-page .hero-carousel .slide-counter{display:none}
.company-page .hero-carousel .slide-pause{position:absolute;right:16px;bottom:18px;font-size:16px}
.company-page .hero-carousel .slide-caption{bottom:82px}
@media(prefers-reduced-motion:reduce){
  .company-page .hero-carousel .carousel-toolbar button{transition:none}
  .company-page .button,.company-page .company-card,.company-page .hero-slide img{transition:none}
  .company-page .button:hover,.company-page .company-card:hover{transform:none}
}
