 /* =========================================================
   RED AT WATER | style_empresas_father.css
   Parche corregido según capturas
   Enfoque: menos aire muerto, mejor lectura, cards sólidas,
   iconografía limpia, responsive real, marca AT WATER sutil
   ========================================================= */

 :root {
     --atw-primary: #0d8aa6;
     --atw-primary-2: #14a8c7;
     --atw-primary-3: #083b52;
     --atw-primary-4: #062a3a;

     --atw-accent: #28c7d9;
     --atw-accent-2: #72e6ee;
     --atw-accent-soft: #e8f9fc;

     --atw-success: #1da96b;
     --atw-warning: #d89b1d;

     --atw-bg: #f5fbfc;
     --atw-bg-soft: #f8fcfd;
     --atw-surface: #ffffff;
     --atw-surface-2: #f2fafb;

     --atw-text: #132b3a;
     --atw-text-2: #284355;
     --atw-muted: #6b8190;

     --atw-line: rgba(8, 59, 82, .10);
     --atw-line-strong: rgba(8, 59, 82, .18);

     --atw-shadow-xs: 0 6px 18px rgba(8, 59, 82, .05);
     --atw-shadow-sm: 0 14px 28px rgba(8, 59, 82, .07);
     --atw-shadow-md: 0 18px 40px rgba(8, 59, 82, .10);

     --atw-radius-sm: 12px;
     --atw-radius-md: 18px;
     --atw-radius-lg: 24px;

     --atw-transition: all .28s ease;
 }

 /* =========================
   BASE
   ========================= */
 .atw-quienes-somos-page {
     position: relative;
     overflow: hidden;
     background:
         radial-gradient(circle at top left, rgba(114, 230, 238, .06), transparent 28%),
         radial-gradient(circle at bottom right, rgba(13, 138, 166, .05), transparent 22%),
         linear-gradient(180deg, #ffffff 0%, #f8fcfd 100%);
     color: var(--atw-text);
 }

 .atw-quienes-somos-page,
 .atw-quienes-somos-page * {
     box-sizing: border-box;
 }

 .atw-quienes-somos-page .container {
     position: relative;
     z-index: 2;
 }

 .atw-quienes-somos-page .section {
     position: relative;
     padding: 58px 0;
     margin: 0;
     border: 0;
 }

 .atw-quienes-somos-page .section.bg-transparent {
     background: transparent !important;
 }

 .atw-quienes-somos-page h1,
 .atw-quienes-somos-page h2,
 .atw-quienes-somos-page h3,
 .atw-quienes-somos-page h4,
 .atw-quienes-somos-page h5,
 .atw-quienes-somos-page h6 {
     color: var(--atw-primary-4);
     font-weight: 800;
     line-height: 1.12;
     letter-spacing: -.02em;
     margin-bottom: 12px;
 }

 .atw-quienes-somos-page h1 {
     font-size: clamp(2rem, 4vw, 3.7rem);
 }

 .atw-quienes-somos-page h2 {
     font-size: clamp(1.55rem, 2.5vw, 2.6rem);
 }

 .atw-quienes-somos-page h3 {
     font-size: clamp(1.08rem, 1.5vw, 1.35rem);
 }

 .atw-quienes-somos-page h4 {
     font-size: 1rem;
 }

 .atw-quienes-somos-page p {
     font-size: 1rem;
     line-height: 1.72;
     color: var(--atw-text-2);
     margin-bottom: 14px;
 }

 .atw-quienes-somos-page .lead {
     font-size: 1.06rem;
     line-height: 1.78;
     color: var(--atw-text-2);
 }

 .atw-quienes-somos-page a {
     transition: var(--atw-transition);
 }

 .atw-quienes-somos-page img {
     max-width: 100%;
     height: auto;
 }

 /* =========================
   MARCA DE AGUA SUTIL
   ========================= */
 .atw-quienes-somos-page::before {
     content: "AT WATER";
     position: fixed;
     right: -34px;
     bottom: 18px;
     transform: rotate(-90deg);
     transform-origin: bottom right;
     font-size: clamp(34px, 4.3vw, 62px);
     font-weight: 900;
     letter-spacing: .18em;
     line-height: 1;
     color: rgba(13, 138, 166, .035);
     pointer-events: none;
     z-index: 0;
     white-space: nowrap;
 }

 .atw-quienes-somos-page::after {
     content: "";
     position: absolute;
     inset: 0;
     background:
         radial-gradient(circle at 14% 20%, rgba(40, 199, 217, .05), transparent 16%),
         radial-gradient(circle at 84% 76%, rgba(114, 230, 238, .05), transparent 14%);
     pointer-events: none;
     z-index: 0;
 }

 /* =========================
   HEADING BLOCK
   ========================= */
 .atw-quienes-somos-page .heading-block {
     margin-bottom: 22px;
 }

 .atw-quienes-somos-page .heading-block.center {
     text-align: center;
     max-width: 920px;
     margin-left: auto;
     margin-right: auto;
 }

 .atw-quienes-somos-page .heading-block>span {
     display: block;
     max-width: 820px;
     margin: 0 auto;
     font-size: .98rem;
     line-height: 1.7;
     color: var(--atw-muted);
 }

 .atw-quienes-somos-page .heading-block.center h2 {
     max-width: 920px;
     margin-left: auto;
     margin-right: auto;
 }

 .atw-quienes-somos-page .heading-block.center h2::after {
     content: "";
     display: block;
     width: 86px;
     height: 4px;
     margin: 14px auto 0;
     border-radius: 999px;
     background: linear-gradient(90deg, var(--atw-primary), var(--atw-accent));
 }

 .atw-quienes-somos-page .nobottomborder::after {
     display: none !important;
     content: none !important;
 }

 /* =========================
   HERO
   ========================= */
 .atw-quienes-somos-page .section:first-of-type {
     padding-top: 72px;
     padding-bottom: 42px;
 }

 .atw-quienes-somos-page .section:first-of-type .heading-block {
     margin-bottom: 16px;
 }

 .atw-quienes-somos-page .section:first-of-type .heading-block>span:first-child {
     display: inline-block;
     margin-bottom: 10px;
     font-size: .82rem;
     font-weight: 800;
     letter-spacing: .15em;
     text-transform: uppercase;
     color: var(--atw-primary);
 }

 .atw-quienes-somos-page .section:first-of-type .lead {
     max-width: 760px;
 }

 .atw-quienes-somos-page .section:first-of-type img {
     display: block;
     margin: 0 auto;
     filter: drop-shadow(0 20px 36px rgba(13, 138, 166, .10));
 }

 /* =========================
   FONDOS CLAROS
   ========================= */
 .atw-quienes-somos-page .section[style*="background:#f7fbfc"],
 .atw-quienes-somos-page .section[style*="background: #f7fbfc"],
 .atw-quienes-somos-page .section[style*="background:linear-gradient(135deg,#eaf9fc 0%, #f8fcfd 100%)"] {
     position: relative;
     border-top: 1px solid rgba(13, 138, 166, .05);
     border-bottom: 1px solid rgba(13, 138, 166, .05);
 }

 .atw-quienes-somos-page .section[style*="background:#f7fbfc"]::before,
 .atw-quienes-somos-page .section[style*="background: #f7fbfc"]::before,
 .atw-quienes-somos-page .section[style*="background:linear-gradient(135deg,#eaf9fc 0%, #f8fcfd 100%)"]::before {
     content: "";
     position: absolute;
     inset: 0;
     background:
         linear-gradient(180deg, rgba(255, 255, 255, .48), rgba(255, 255, 255, .16)),
         radial-gradient(circle at top right, rgba(114, 230, 238, .10), transparent 18%);
     pointer-events: none;
 }

 /* =========================
   CARDS PRINCIPALES
   ========================= */
 .atw-quienes-somos-page .card {
     position: relative;
     background: linear-gradient(180deg, #ffffff 0%, #fbfeff 100%);
     border: 1px solid var(--atw-line) !important;
     border-radius: var(--atw-radius-md) !important;
     box-shadow: var(--atw-shadow-xs);
     transition: var(--atw-transition);
     overflow: hidden;
     height: 100%;
 }

 .atw-quienes-somos-page .card::before {
     content: "";
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     height: 4px;
     background: linear-gradient(90deg, var(--atw-primary), var(--atw-accent));
 }

 .atw-quienes-somos-page .card:hover {
     transform: translateY(-4px);
     box-shadow: var(--atw-shadow-sm);
     border-color: rgba(13, 138, 166, .15) !important;
 }

 .atw-quienes-somos-page .card h3 {
     color: var(--atw-primary-3);
     margin-bottom: 12px;
 }

 .atw-quienes-somos-page .card p {
     font-size: .97rem;
     line-height: 1.72;
 }

 .atw-quienes-somos-page .card .iconlist {
     margin-top: 14px;
 }

 /* =========================
   FEATURE BOX
   ========================= */
 .atw-quienes-somos-page .feature-box {
     position: relative;
     padding: 8px 0 2px;
 }

 .atw-quienes-somos-page .feature-box h3 {
     color: var(--atw-primary-3);
     margin-bottom: 8px;
 }

 .atw-quienes-somos-page .feature-box p {
     color: var(--atw-muted);
     font-size: .95rem;
     line-height: 1.68;
     margin-bottom: 0;
 }

 .atw-quienes-somos-page .fbox-plain .fbox-icon {
     margin-bottom: 12px;
 }

 .atw-quienes-somos-page .fbox-plain .fbox-icon i,
 .atw-quienes-somos-page .fbox-plain .fbox-icon a i {
     font-size: 28px;
     color: var(--atw-primary);
     transition: var(--atw-transition);
 }

 .atw-quienes-somos-page .feature-box:hover .fbox-icon i,
 .atw-quienes-somos-page .feature-box:hover .fbox-icon a i {
     transform: translateY(-2px);
     color: var(--atw-primary-2);
 }

 /* =========================
   FEATURE BOX OUTLINE / BENEFICIOS / CANALES
   ========================= */
 .atw-quienes-somos-page .fbox-outline {
     background: rgba(255, 255, 255, .96);
     border: 1px solid var(--atw-line);
     border-radius: 22px;
     box-shadow: var(--atw-shadow-xs);
     padding: 26px 22px 24px;
     min-height: 240px;
     height: 100%;
     transition: var(--atw-transition);
 }

 .atw-quienes-somos-page .fbox-outline:hover {
     transform: translateY(-4px);
     box-shadow: var(--atw-shadow-sm);
     border-color: rgba(13, 138, 166, .14);
 }

 .atw-quienes-somos-page .fbox-center {
     text-align: center;
 }

 .atw-quienes-somos-page .fbox-center .fbox-icon {
     margin-left: auto;
     margin-right: auto;
     margin-bottom: 14px;
 }

 .atw-quienes-somos-page .fbox-center .fbox-icon a {
     width: 84px;
     height: 84px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     border-radius: 50%;
     background: linear-gradient(180deg, #36a6e9 0%, #2a98dd 100%);
     border: 3px solid #ffffff;
     box-shadow:
         0 0 0 1px rgba(13, 138, 166, .28),
         0 12px 24px rgba(13, 138, 166, .08);
 }

 .atw-quienes-somos-page .fbox-center .fbox-icon i {
     font-size: 28px;
     color: rgba(8, 59, 82, .52);
 }

 .atw-quienes-somos-page .fbox-center h3 {
     font-size: 1rem;
     text-transform: uppercase;
     line-height: 1.2;
     margin-bottom: 14px;
 }

 .atw-quienes-somos-page .fbox-center h3::after {
     content: "";
     display: block;
     width: 30px;
     height: 2px;
     margin: 14px auto 0;
     background: rgba(8, 59, 82, .55);
     border-radius: 999px;
 }

 .atw-quienes-somos-page .fbox-center p {
     max-width: 240px;
     margin-left: auto;
     margin-right: auto;
     font-size: .98rem;
     line-height: 1.75;
 }

 /* =========================
   ICONLIST
   ========================= */
 .atw-quienes-somos-page .iconlist {
     margin: 0;
     padding: 0;
     list-style: none;
 }

 .atw-quienes-somos-page .iconlist li {
     position: relative;
     padding-left: 28px;
     margin-bottom: 12px;
     color: var(--atw-text-2);
     line-height: 1.62;
 }

 .atw-quienes-somos-page .iconlist li i {
     position: absolute;
     left: 0;
     top: 4px;
     color: var(--atw-success);
     font-size: 14px;
 }

 .atw-quienes-somos-page .text-success {
     color: var(--atw-success) !important;
 }

 .atw-quienes-somos-page .text-primary {
     color: var(--atw-primary) !important;
 }

 /* =========================
   FATHER ALIADO OSCURO
   ========================= */
 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] {
     overflow: hidden;
 }

 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"]::before {
     content: "";
     position: absolute;
     inset: 0;
     background:
         radial-gradient(circle at 16% 22%, rgba(114, 230, 238, .08), transparent 20%),
         radial-gradient(circle at 82% 82%, rgba(40, 199, 217, .07), transparent 16%);
     pointer-events: none;
 }

 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] h2,
 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] h3,
 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] h4,
 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] p,
 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] span {
     color: #fff !important;
 }

 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] .heading-block>span {
     color: rgba(255, 255, 255, .78) !important;
 }

 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] .row .col-sm-6>div {
     background: rgba(255, 255, 255, .07) !important;
     border-radius: 18px !important;
     box-shadow: 0 12px 28px rgba(0, 0, 0, .14);
     transition: var(--atw-transition);
 }

 .atw-quienes-somos-page .section[style*="linear-gradient(180deg,#0b2d3b 0%, #0f4355 100%)"] .row .col-sm-6>div:hover {
     transform: translateY(-3px);
     background: rgba(255, 255, 255, .09) !important;
 }

 /* =========================
   BOTONES
   ========================= */
 .atw-quienes-somos-page .button {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     min-height: 50px;
     padding: 13px 22px;
     border-radius: 999px !important;
     font-weight: 800;
     font-size: .95rem;
     line-height: 1.2;
     text-align: center;
     border: 1px solid transparent;
     box-shadow: 0 10px 22px rgba(13, 138, 166, .10);
     transition: var(--atw-transition);
 }

 .atw-quienes-somos-page .button:hover {
     transform: translateY(-2px);
     box-shadow: 0 14px 28px rgba(13, 138, 166, .14);
 }

 .atw-quienes-somos-page .button.button-aqua,
 .atw-quienes-somos-page .button[style*="background:#28c7d9"] {
     background: linear-gradient(135deg, var(--atw-primary), var(--atw-accent)) !important;
     color: #fff !important;
     border-color: transparent !important;
 }

 .atw-quienes-somos-page .button.button-border,
 .atw-quienes-somos-page .button.button-dark.button-border {
     background: rgba(255, 255, 255, .96) !important;
     color: var(--atw-primary-4) !important;
     border: 1px solid rgba(8, 59, 82, .15) !important;
     box-shadow: 0 8px 18px rgba(8, 59, 82, .05);
 }

 .atw-quienes-somos-page .button.button-border:hover {
     color: var(--atw-primary) !important;
     border-color: rgba(13, 138, 166, .24) !important;
 }

 .atw-quienes-somos-page .button-xlarge {
     min-height: 54px;
     font-size: .98rem;
 }

 .atw-quienes-somos-page .btn-block {
     width: 100%;
 }

 /* =========================
   ESPACIADOS
   ========================= */
 .atw-quienes-somos-page .bottommargin {
     margin-bottom: 24px !important;
 }

 .atw-quienes-somos-page .bottommargin-sm {
     margin-bottom: 14px !important;
 }

 .atw-quienes-somos-page .topmargin-sm {
     margin-top: 16px !important;
 }

 .atw-quienes-somos-page .notopmargin {
     margin-top: 0 !important;
 }

 .atw-quienes-somos-page .nobottommargin {
     margin-bottom: 0 !important;
 }

 .atw-quienes-somos-page .noborder {
     border: 0 !important;
 }

 .atw-quienes-somos-page .clearfix::after {
     content: "";
     display: block;
     clear: both;
 }

 /* =========================
   CANALES Y CIERRE FINAL
   ========================= */
 .atw-quienes-somos-page .section:last-of-type,
 .atw-quienes-somos-page .section.notopmargin.noborder.nobottommargin {
     padding-top: 34px;
     padding-bottom: 34px;
 }

 .atw-quienes-somos-page .section.notopmargin.noborder.nobottommargin .heading-block {
     margin-bottom: 0;
 }

 .atw-quienes-somos-page .section.notopmargin.noborder.nobottommargin h2 {
     max-width: 980px;
     margin-left: auto;
     margin-right: auto;
 }

 .atw-quienes-somos-page .section.notopmargin.noborder.nobottommargin span {
     max-width: 760px;
     font-size: .98rem;
 }

 /* =========================
   COMPATIBILIDAD LEGACY
   ========================= */
 .atw-quienes-somos-page .text-center {
     text-align: center !important;
 }

 .atw-quienes-somos-page .align-items-center {
     align-items: center !important;
 }

 .atw-quienes-somos-page .img-responsive {
     display: block;
     max-width: 100%;
     height: auto;
 }

 .atw-quienes-somos-page .ls2 {
     letter-spacing: .15em !important;
 }

 .atw-quienes-somos-page .text-uppercase {
     text-transform: uppercase !important;
 }

 .atw-quienes-somos-page .opacity0 {
     opacity: 1 !important;
 }

 .atw-quienes-somos-page br+br {
     display: none;
 }

 /* =========================
   RESPONSIVE
   ========================= */
 @media (max-width: 1199.98px) {
     .atw-quienes-somos-page .section {
         padding: 52px 0;
     }

     .atw-quienes-somos-page .fbox-outline {
         min-height: 220px;
     }
 }

 @media (max-width: 991.98px) {
     .atw-quienes-somos-page::before {
         font-size: 46px;
         right: -22px;
         bottom: 12px;
     }

     .atw-quienes-somos-page .section:first-of-type {
         padding-top: 58px;
         padding-bottom: 36px;
     }

     .atw-quienes-somos-page .heading-block {
         text-align: center;
     }

     .atw-quienes-somos-page .lead {
         text-align: center;
     }

     .atw-quienes-somos-page .section:first-of-type .d-flex,
     .atw-quienes-somos-page .d-flex.flex-wrap {
         justify-content: center;
     }

     .atw-quienes-somos-page .section:first-of-type img {
         max-width: 420px;
         margin-top: 8px;
     }

     .atw-quienes-somos-page .fbox-outline {
         min-height: 210px;
     }
 }

 @media (max-width: 767.98px) {
     .atw-quienes-somos-page::before {
         display: none;
     }

     .atw-quienes-somos-page .section {
         padding: 44px 0;
     }

     .atw-quienes-somos-page h1 {
         font-size: clamp(1.85rem, 8vw, 2.4rem);
     }

     .atw-quienes-somos-page h2 {
         font-size: clamp(1.35rem, 6.4vw, 1.9rem);
     }

     .atw-quienes-somos-page h3 {
         font-size: 1.02rem;
     }

     .atw-quienes-somos-page p,
     .atw-quienes-somos-page .heading-block>span {
         font-size: .96rem;
         line-height: 1.68;
     }

     .atw-quienes-somos-page .lead {
         font-size: .98rem;
     }

     .atw-quienes-somos-page .card,
     .atw-quienes-somos-page .fbox-outline {
         border-radius: 18px !important;
     }

     .atw-quienes-somos-page .card {
         padding: 22px 18px !important;
     }

     .atw-quienes-somos-page .fbox-outline {
         padding: 22px 18px 20px;
         min-height: auto;
     }

     .atw-quienes-somos-page .fbox-center .fbox-icon a {
         width: 74px;
         height: 74px;
     }

     .atw-quienes-somos-page .fbox-center .fbox-icon i {
         font-size: 24px;
     }

     .atw-quienes-somos-page .button,
     .atw-quienes-somos-page .button-xlarge {
         width: 100%;
         min-height: 50px;
         padding: 13px 16px;
         font-size: .94rem;
     }

     .atw-quienes-somos-page .bottommargin {
         margin-bottom: 18px !important;
     }

     .atw-quienes-somos-page .topmargin-sm {
         margin-top: 12px !important;
     }
 }

 @media (max-width: 575.98px) {
     .atw-quienes-somos-page .container {
         padding-left: 16px;
         padding-right: 16px;
     }

     .atw-quienes-somos-page .section:first-of-type {
         padding-top: 50px;
     }

     .atw-quienes-somos-page .heading-block>span {
         font-size: .93rem;
     }

     .atw-quienes-somos-page .fbox-center h3 {
         font-size: .96rem;
     }

     .atw-quienes-somos-page .fbox-center p {
         font-size: .94rem;
     }

     .atw-quienes-somos-page .iconlist li {
         padding-left: 24px;
         margin-bottom: 10px;
     }
 }

 /* =========================================================
   HOTFIX | overflow y layout herramientas digitales
   ========================================================= */

 /* Evita desbordes horizontales globales */
 html,
 body {
     overflow-x: hidden;
 }

 .atw-quienes-somos-page {
     overflow-x: clip;
 }

 /* Asegura que headings largos sí hagan salto de línea */
 .atw-quienes-somos-page h1,
 .atw-quienes-somos-page h2,
 .atw-quienes-somos-page h3,
 .atw-quienes-somos-page h4 {
     white-space: normal !important;
     overflow-wrap: break-word;
     word-wrap: break-word;
 }

 /* Títulos centrales: nunca una sola línea rígida */
 .atw-quienes-somos-page .heading-block.center h2 {
     max-width: 900px;
     margin-left: auto;
     margin-right: auto;
     white-space: normal !important;
     line-height: 1.14;
     text-wrap: balance;
 }

 /* Mejor límite para subtítulos */
 .atw-quienes-somos-page .heading-block>span {
     max-width: 760px;
     margin-left: auto;
     margin-right: auto;
 }

 /* ---------------------------------------------------------
   SECCIÓN HERRAMIENTAS DIGITALES
   Ajusta grid, textos e iconos
   --------------------------------------------------------- */

 /* Si esta sección usa fondo claro, mejor compactación */
 .atw-quienes-somos-page .section[style*="background:#f7fbfc"] .feature-box,
 .atw-quienes-somos-page .section[style*="background: #f7fbfc"] .feature-box {
     padding-top: 6px;
 }

 /* Los items de herramientas deben respirar y no quedar pegados */
 .atw-quienes-somos-page .section .feature-box.fbox-plain {
     max-width: 100%;
 }

 /* Títulos de herramientas: compactos pero firmes */
 .atw-quienes-somos-page .feature-box.fbox-plain h3 {
     font-size: 1rem;
     line-height: 1.18;
     margin-bottom: 10px;
     white-space: normal !important;
     overflow-wrap: break-word;
     word-break: normal;
     max-width: 320px;
 }

 /* Párrafos de herramientas: mejor lectura */
 .atw-quienes-somos-page .feature-box.fbox-plain p {
     max-width: 320px;
     font-size: .94rem;
     line-height: 1.66;
 }

 /* Íconos alineados, no gigantes */
 .atw-quienes-somos-page .feature-box.fbox-plain .fbox-icon {
     margin-bottom: 10px;
     min-height: 34px;
     display: flex;
     align-items: center;
 }

 .atw-quienes-somos-page .feature-box.fbox-plain .fbox-icon i,
 .atw-quienes-somos-page .feature-box.fbox-plain .fbox-icon a i {
     font-size: 26px;
     line-height: 1;
 }

 /* ---------------------------------------------------------
   Grid desktop más estable para herramientas
   --------------------------------------------------------- */
 @media (min-width: 992px) {
     .atw-quienes-somos-page .section .row.clearfix {
         display: flex;
         flex-wrap: wrap;
     }

     .atw-quienes-somos-page .section .row.clearfix>[class*="col-md-6"],
     .atw-quienes-somos-page .section .row.clearfix>[class*="col-lg-3"] {
         display: flex;
         flex-direction: column;
     }

     .atw-quienes-somos-page .feature-box.fbox-plain {
         height: 100%;
     }
 }

 /* ---------------------------------------------------------
   Evita que títulos largos se rompan feo en tablet
   --------------------------------------------------------- */
 @media (max-width: 991.98px) {
     .atw-quienes-somos-page .heading-block.center h2 {
         max-width: 720px;
         font-size: clamp(1.4rem, 4.8vw, 2.1rem);
     }

     .atw-quienes-somos-page .feature-box.fbox-plain h3,
     .atw-quienes-somos-page .feature-box.fbox-plain p {
         max-width: 100%;
     }
 }

 /* ---------------------------------------------------------
   Mobile: una columna clara, sin desbordes
   --------------------------------------------------------- */
 @media (max-width: 767.98px) {
     .atw-quienes-somos-page .heading-block.center h2 {
         max-width: 100%;
         font-size: clamp(1.28rem, 6vw, 1.8rem);
         line-height: 1.16;
         text-wrap: balance;
     }

     .atw-quienes-somos-page .heading-block>span {
         max-width: 100%;
         font-size: .93rem;
         line-height: 1.62;
     }

     .atw-quienes-somos-page .feature-box.fbox-plain {
         text-align: center;
         padding-top: 2px;
         padding-bottom: 8px;
     }

     .atw-quienes-somos-page .feature-box.fbox-plain .fbox-icon {
         justify-content: center;
         margin-bottom: 8px;
     }

     .atw-quienes-somos-page .feature-box.fbox-plain h3 {
         max-width: 100%;
         margin-left: auto;
         margin-right: auto;
         font-size: .98rem;
     }

     .atw-quienes-somos-page .feature-box.fbox-plain p {
         max-width: 100%;
         margin-left: auto;
         margin-right: auto;
         font-size: .93rem;
     }
 }

 /* ---------------------------------------------------------
   Si algún tema/plantilla mete rows con márgenes agresivos
   --------------------------------------------------------- */
 .atw-quienes-somos-page .row {
     margin-left: -12px;
     margin-right: -12px;
 }

 .atw-quienes-somos-page .row>[class*="col-"],
 .atw-quienes-somos-page .row>[class*="col_"] {
     padding-left: 12px;
     padding-right: 12px;
 }

 /* Blindaje para headings largos de secciones específicas */
 #herramientas-digitales .heading-block h2,
 #herramientas .heading-block h2 {
     white-space: normal !important;
     max-width: 900px;
     margin-left: auto;
     margin-right: auto;
 }

 /* =========================================================
   HTML limpio | clases nuevas
   ========================================================= */

 .atw-kicker {
     color: var(--atw-primary);
     font-weight: 800;
 }

 .atw-kicker-light {
     color: #7de3f0 !important;
     font-weight: 800;
 }

 .atw-hero-title {
     margin-top: 10px;
 }

 .atw-hero-subtitle {
     font-size: 1.08rem;
     line-height: 1.78;
     color: var(--atw-muted);
 }

 .atw-hero-lead {
     margin-bottom: 18px;
 }

 .atw-hero-image {
     width: 100%;
     max-width: 520px;
     display: block;
     margin: 0 auto;
 }

 .atw-btn-group {
     gap: 12px;
 }

 .atw-section-soft {
     background: #f7fbfc;
 }

 .atw-section-dark {
     background: linear-gradient(180deg, #0b2d3b 0%, #0f4355 100%);
     color: #fff;
 }

 .atw-section-gradient {
     background: linear-gradient(135deg, #eaf9fc 0%, #f8fcfd 100%);
 }

 .atw-text-light {
     color: rgba(255, 255, 255, .90) !important;
 }

 .atw-text-light-soft {
     color: rgba(255, 255, 255, .82) !important;
 }

 .atw-father-lead {
     font-size: 1.05rem;
 }

 .atw-card-icon {
     font-size: 34px;
     color: var(--atw-primary);
     margin-bottom: 12px;
 }

 .atw-profile-card,
 .atw-entry-card {
     padding: 28px;
     height: 100%;
 }

 .atw-dark-mini-card {
     background: rgba(255, 255, 255, .08);
     border: 1px solid rgba(255, 255, 255, .12);
     border-radius: 18px;
     padding: 22px;
     height: 100%;
 }

 .atw-dark-mini-card h4 {
     color: #fff !important;
 }

 .atw-dark-mini-card p {
     margin-bottom: 0;
     color: rgba(255, 255, 255, .82) !important;
 }

 .atw-tool-item .fbox-icon i,
 .atw-feature-intro .fbox-icon i {
     color: var(--atw-primary);
 }

 .atw-cta-primary {
     margin-bottom: 12px;
 }

 .atw-button-light-outline {
     border-color: #fff !important;
     color: #fff !important;
     background: transparent !important;
 }

 .atw-button-light-outline:hover {
     background: rgba(255, 255, 255, .08) !important;
     color: #fff !important;
 }

 .atw-closing-section {
     padding-top: 10px !important;
 }

 @media (max-width: 767.98px) {

     .atw-profile-card,
     .atw-entry-card {
         padding: 22px 18px;
     }

     .atw-dark-mini-card {
         padding: 18px;
     }

     .atw-hero-subtitle {
         font-size: .98rem;
         line-height: 1.68;
     }
 }