/* CSS de contacto y formulario de la web actual, para las fichas */
/* ─── CONTACTO ─── */
    .contact-layout {
      display: grid;
      grid-template-columns: 1fr 1.4fr;
      gap: 100px;
      align-items: start;
    }

    .contact-info {
      display: flex;
      flex-direction: column;
      gap: 32px;
    }

    .contact-item {
      display: flex;
      gap: 18px;
      align-items: flex-start;
    }

    .contact-icon {
      width: 44px;
      height: 44px;
      background: rgba(123,158,171,0.1);
      border-radius: var(--radius);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      color: var(--slate);
    }

    .contact-label {
      font-size: 11px;
      font-weight: 600;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--text-3);
      margin-bottom: 4px;
    }

    .contact-value {
      font-size: 15px;
      color: var(--text-1);
      font-weight: 500;
    }

    /* ─── FORM SELECTOR ─── */
    .contact-form {
      display: flex;
      flex-direction: column;
      gap: 32px;
    }

    .filter-group label {
      display: block;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--text-3);
      margin-bottom: 14px;
    }

    .filter-pills {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .filter-pills input[type="radio"],
    .filter-pills input[type="checkbox"] {
      display: none;
    }

    .filter-pills label {
      display: inline-block;
      padding: 10px 22px;
      border: 1px solid var(--border);
      border-radius: 2px;
      font-size: 13px;
      font-weight: 500;
      color: var(--text-2);
      cursor: pointer;
      transition: border-color 0.2s, background 0.2s, color 0.2s;
      letter-spacing: 0;
      text-transform: none;
      margin-bottom: 0;
    }

    .filter-pills input[type="radio"]:checked + label,
    .filter-pills input[type="checkbox"]:checked + label {
      border-color: var(--slate-dark);
      background: var(--slate-dark);
      color: white;
    }

    .filter-pills label:hover {
      border-color: var(--slate);
      color: var(--slate-dark);
    }

    .form-submit {
      background: var(--dark);
      color: white;
      border: none;
      padding: 16px 40px;
      border-radius: var(--radius);
      font-size: 12px;
      font-weight: 600;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      cursor: pointer;
      transition: background 0.2s, transform 0.2s;
      align-self: flex-start;
      font-family: 'Inter', sans-serif;
      width: 100%;
    }

    .form-submit:hover {
      background: var(--slate-dark);
      transform: translateY(-2px);
    }

    
/* ─── FORM INPUTS ─── */
    .form-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }

    .form-field {
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .form-field-full {
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .form-label {
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--text-3);
    }

    .form-input,
    .form-textarea {
      padding: 13px 16px;
      border: 1px solid var(--border);
      border-radius: var(--radius);
      font-size: 14px;
      font-family: 'Inter', sans-serif;
      color: var(--text-1);
      background: white;
      transition: border-color 0.2s, box-shadow 0.2s;
      outline: none;
    }

    .form-input:focus,
    .form-textarea:focus {
      border-color: var(--slate);
      box-shadow: 0 0 0 3px rgba(123,158,171,0.15);
    }

    .form-textarea {
      resize: vertical;
      min-height: 96px;
    }

    /* ─── CONTACT LINKS ─── */
    .contact-value a {
      color: var(--text-1);
      text-decoration: none;
      transition: color 0.2s;
    }

    .contact-value a:hover { color: var(--slate-dark); }

    
/* ─── NEWSLETTER ─── */
    #newsletter {
      background: var(--slate);
      padding: 80px 6%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 40px;
    }
    .newsletter-inner { flex: 1; }
    .newsletter-form-side { flex: 0 0 auto; }
    .newsletter-form { margin-top: 0; }
    .nl-field-group {
      display: flex;
      flex-direction: column;
      gap: 10px;
      min-width: 300px;
    }
    .nl-input {
      padding: 14px 18px;
      border: 1px solid rgba(255,255,255,0.3);
      border-radius: var(--radius);
      background: rgba(255,255,255,0.1);
      color: white;
      font-family: 'Inter', sans-serif;
      font-size: 14px;
      outline: none;
      transition: border-color 0.2s, background 0.2s;
    }
    .nl-input::placeholder { color: rgba(255,255,255,0.55); }
    .nl-input:focus {
      border-color: white;
      background: rgba(255,255,255,0.18);
    }
    #newsletter .btn-white {
      border: none;
      cursor: pointer;
      font-family: 'Inter', sans-serif;
      width: 100%;
      text-align: center;
    }
    .nl-msg {
      margin-top: 12px;
      font-size: 14px;
      font-family: 'Inter', sans-serif;
      min-height: 20px;
      color: rgba(255,255,255,0.65);
    }
    .nl-msg.success { color: white; }
    .nl-msg.error   { color: #fca5a5; }
    @media (max-width: 900px) {
      #newsletter { flex-direction: column; }
      .newsletter-inner { width: 100%; }
      .newsletter-form-side { width: 100%; }
      .nl-field-group { min-width: 0; }
    }

  
/* Mejoras de la beta sobre la web actual de AT. Se carga al final: solo corrige lo que se decidió corregir. */

/* 1. Tipografía: Montserrat en todo (pedido de Matías) */
body,body *{font-family:'Montserrat',system-ui,sans-serif!important}
em{font-style:normal!important;font-weight:300!important}

/* 2. Legibilidad: nada bajo 14 px ni con transparencia en el texto */
.azp-desc-label,.azp-desc-cta,.azp-pillar-num{font-size:14px!important}
.section-tag,.hero-tag,.contact-label,.form-label,.project-status,.badge,#header .header-nav a,.footer-bottom,.footer-bottom a{font-size:14px!important}
.project-location,.project-details,.project-details span{font-size:14px!important;color:#fff!important}
.hero-subtitle,.hero-tag{color:#fff!important}
.status-badge,.hero-stat-label,.atg-counter,.atfb-loading-text,.atfb-page-counter,.obra-metric-phase,.obra-metric-delivery,.obra-status-badge,.obra-step-name,.obra-step-desc,.btn-outline-white,.btn-newsletter,.ov-num,.ov-sub,.ov-location,[class^="ov-"] a,[class^="ov-"] p,.atg-tab-count,.breadcrumb,.breadcrumb a,.breadcrumb span,footer p,footer a,footer span,footer strong,.footer-col a{font-size:14px!important}
.dd-desc,.dd-member-name,.dd-member-role,.dd-nl-btn,.dd-contact-label,.btn-primary,.btn-ghost,.btn-white,.form-submit,.stat-label,.team-role,.footer-col-title,.wa-tooltip,.ov-proj-item,.ov-nl-pagebtn,.ov-nl-formlabel,.ov-nl-btn,#header [class*="dd-"] span,[class*="ov-proj"] span{font-size:14px!important}
#header .header-nav a{color:#fff!important}
.hero-title em{background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;-webkit-text-fill-color:#D8C9B0!important;color:#D8C9B0!important}
.section-subtitle,.contact-value{color:#374151!important}

/* 3. Portada: los renders de los proyectos, brillantes, en lugar de una foto fija oscura */
.hero-bg{opacity:1!important;background-image:none!important;transition:none!important;overflow:hidden}
.hb-slide{position:absolute;inset:0;background-size:cover;background-position:50% 58%;opacity:0;transition:opacity 1.2s ease}
.hb-slide.on{opacity:1}
.hero-gradient{background:linear-gradient(to right,rgba(17,24,32,.8) 0%,rgba(17,24,32,.68) 24%,rgba(17,24,32,.3) 44%,rgba(17,24,32,0) 60%),linear-gradient(to top,rgba(17,24,32,.7) 0%,rgba(17,24,32,.22) 30%,rgba(17,24,32,0) 50%),linear-gradient(to bottom,rgba(17,24,32,.78) 0%,rgba(17,24,32,.5) 9%,rgba(17,24,32,0) 20%)!important}
.hb-slide{background-position:0% 58%!important}
.hero-social a{color:#fff!important;border:1px solid #fff!important;background:rgba(17,24,32,.72)!important;width:48px!important;height:48px!important}
.hero-social a:hover{background:#fff!important;color:#1C2B35!important}
.hero-social{gap:12px!important}
.btn-primary,.form-submit,#header .btn-nav{background:#4A6877!important;color:#fff!important}
.btn-primary:hover,.form-submit:hover,#header .btn-nav:hover{background:#1C2B35!important}
.hero-content{max-width:540px!important;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.hero-title{font-size:clamp(32px,3.8vw,54px)!important}
.hb-cap{position:absolute;right:6%;bottom:90px;z-index:3;display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.hb-cap strong{font-size:24px;font-weight:600;line-height:1.2}
.hb-cap .hb-e{font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.hb-cap a{font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff}
.hb-dots{display:flex;gap:2px}
.hb-dots button{width:40px;height:40px;border:0;background:none;display:flex;align-items:center;justify-content:center;cursor:pointer}
.hb-dots button::after{content:"";display:block;width:24px;height:3px;background:#fff}
.hb-dots button[aria-current=true]::after{background:#D8C9B0;width:36px}

/* 4. Proyectos: Gascón, Mosconi y Piers con la misma visibilidad, en una fila de tres iguales */
.mp-head{padding:64px 0 18px}
.mp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(0,0,0,.06)}
.mp-grid .project-card{aspect-ratio:1/1}

/* 4b. Proyectos activos: tres en una fila, con el avance y la entrega siempre visibles */
.projects-grid.pg-3{grid-template-columns:repeat(3,1fr)!important}
.projects-grid.pg-3 .project-card{aspect-ratio:3/4}
.project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.93) 0,rgba(17,24,32,.86) 330px,rgba(17,24,32,.55) 410px,rgba(17,24,32,0) 500px)!important}
.mp-grid .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.92) 0,rgba(17,24,32,.84) 240px,rgba(17,24,32,.5) 310px,rgba(17,24,32,0) 380px)!important}
.project-status,.project-name,.project-location{text-shadow:0 1px 10px rgba(0,0,0,.6)}
.projects-grid.pg-3 .project-info,.mp-grid .project-info{transform:none!important;padding:28px 28px 30px}
.mp-first{padding:48px 0 18px}
/* Tarjetas: estructura fija para que todo quede alineado entre tarjetas */
.projects-grid.pg-3 .project-info,.mp-grid .project-info{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.project-status{padding:0!important;background:none!important;border:0!important;box-shadow:none!important;color:#fff!important;font-size:15px!important;font-weight:600!important;letter-spacing:.02em!important;text-transform:none!important;display:inline-flex!important;align-items:center;gap:10px;min-height:24px;margin-bottom:10px}
.project-status::before{content:"";width:4px;height:16px;background:#fff;flex:none}
.project-status.status-obra::before{background:#D8C9B0}
.project-status.status-pozo::before{background:#A8C4CD}
.project-status.status-entregado::before{background:#fff}
.project-status.status-comerc::before{background:#D8C9B0}
.project-name{min-height:36px;margin-bottom:6px!important;white-space:nowrap}
.project-location{min-height:22px}
.project-details{min-height:64px;align-content:flex-start;row-gap:4px!important;column-gap:20px!important;margin-top:12px!important;padding-top:12px!important;width:100%}
.pc-av{width:100%;min-height:78px;margin-top:2px;padding-top:12px;border-top:1px solid rgba(255,255,255,.35)}
.pc-av-t{display:flex;justify-content:space-between;gap:12px;font-size:15px;font-weight:600;color:#fff;margin-bottom:8px}
.pc-bar{height:3px;background:rgba(255,255,255,.35)}
.pc-bar i{display:block;height:100%;background:#D8C9B0}
.pc-av-e{font-size:14px;color:#fff;margin-top:8px}
.pc-btn{display:flex;align-items:center;justify-content:center;width:100%;height:46px;margin-top:16px;background:#fff;color:#1C2B35;border-radius:4px;font-size:15px;font-weight:600;letter-spacing:.01em}
.project-card:hover .pc-btn{background:#E3EAED}
.mp-grid .project-details{min-height:64px}

/* Muy pronto: una banda a todo el ancho, con presencia */
#proyectos{overflow-x:clip}
.mp-pronto{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);width:100vw;margin:64px 0 -100px calc(50% - 50vw);background:#1C2B35;min-height:500px}
.mp-pronto-in{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;padding:56px 6%;color:#fff}
.mp-pronto-tag{display:inline-flex;align-items:center;gap:10px;font-size:15px!important;font-weight:600;letter-spacing:.02em;color:#fff!important}
.mp-pronto-tag::before{content:"";width:4px;height:16px;background:#8FB0BF}
.mp-pronto h3{font-size:clamp(52px,7vw,112px)!important;font-weight:600!important;line-height:.95;letter-spacing:-.035em;color:#fff;margin:14px 0 4px}
.mp-pronto-z{font-size:22px;font-weight:600;color:#fff}
.mp-pronto-d{font-size:17px;color:#E3EAED;max-width:40ch}
.mp-pronto-btn{margin-top:18px;padding:17px 32px;border:0;background:#fff;color:#1C2B35;font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.mp-pronto-btn:hover{background:#E3EAED}
.mp-pronto-n{font-size:15px;color:#E3EAED;margin-top:6px}
.mp-pronto-vis{position:relative;overflow:hidden;min-height:360px}
.mp-pronto-vis img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mp-pin{position:absolute;left:49%;top:47%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:#fff;border:6px solid #1C2B35;box-shadow:0 0 0 3px #fff,0 0 0 14px rgba(255,255,255,.35)}
.mp-pin-l{position:absolute;left:calc(49% + 26px);top:calc(47% - 20px);background:#1C2B35;color:#fff;font-size:15px;font-weight:600;padding:10px 14px}

/* 4c. Más luz: las bandas y portadas oscuras pasan a versiones claras */
.stats-bar{background:#fff!important;background-image:none!important;border-top:1px solid #D5DEE2;border-bottom:1px solid #D5DEE2}
.stat-number,.stats-bar .stat-number *{color:#1C2B35!important}
.stat-label{color:#374151!important}
.cta-banner{background:#DCE6EA!important;background-image:none!important}
.cta-banner,.cta-banner *{color:#1C2B35!important}
.cta-banner .btn-white{background:#1C2B35!important;color:#fff!important}
#newsletter{background:#1C2B35!important;background-image:none!important}
#newsletter,#newsletter h2,#newsletter h3,#newsletter p,#newsletter label,#newsletter span,#newsletter em{color:#fff!important;-webkit-text-fill-color:#fff!important}
#newsletter .btn-newsletter,#newsletter .btn-white{background:#fff!important;color:#1C2B35!important;-webkit-text-fill-color:#1C2B35!important}
#newsletter input{background:#fff!important;color:#111827!important}
footer{background:#4A6877!important;background-image:none!important}
footer,footer *{color:#fff!important}
.footer-col-title{color:#fff!important}
.project-hero-bg{opacity:1!important}
.project-hero-gradient{background:linear-gradient(to top,rgba(17,24,32,.84) 0%,rgba(17,24,32,.32) 36%,rgba(17,24,32,0) 58%),linear-gradient(to bottom,rgba(17,24,32,.62) 0%,rgba(17,24,32,0) 20%)!important}
.project-hero-content{text-shadow:0 1px 14px rgba(0,0,0,.5)}

/* 4d. Avance de obra en versión clara */
.avance{background:#fff!important;background-image:none!important;color:#111827!important}
.avance .lbl,.avance .section-tag{color:#4A6877!important}
.avance .lbl::before{background:#4A6877!important}
.avance h2,.avance .section-title,.avance h3{color:#111827!important}
.avance em,.avance h2 em{color:#4A6877!important;-webkit-text-fill-color:#4A6877!important;background:none!important}
.avance .obra-status-badge{color:#4A6877!important}
.avance .obra-status-badge::before{background:#4A6877!important}
.avance-step-btn,.avance-step-name{color:#111827!important}
.avance-step-state{color:#374151!important}
.avance-step.actual .avance-step-state{color:#4A6877!important}
.avance-step-btn:hover{background:rgba(17,24,32,.05)!important}
.avance-step.is-view .avance-step-btn{background:#fff!important;border-color:#1C2B35!important}
.avance-step.pending .avance-dot{background:#fff!important;color:#111827!important;border:1px solid #6B7280!important}
.avance-step.done .avance-dot{background:#5C7E8C!important;color:#fff!important}
.avance-step.actual .avance-dot{background:#C4AA8C!important;color:#111820!important}
.avance .obra-metric{border-bottom-color:#D6D0C8!important}
.avance .obra-metric-number,.avance .obra-metric-percent,.avance .obra-metric-delivery{color:#4A6877!important}
.avance .obra-metric-phase{color:#111827!important}
.avance-track{background:#D5DEE2!important}
.avance-fill{background:#5C7E8C!important}
.avance-hoy{background:#4A6877!important;border-color:#fff!important;box-shadow:0 0 0 2px #4A6877!important}
.avance-hoy-label{color:#4A6877!important}
.avance-ir{background:#1C2B35!important;color:#fff!important}
.avance-ir:hover{background:#4A6877!important}
.avance-detail-name{color:#111827!important}
.avance-detail-state{color:#374151!important}
.avance .seguir{color:#1C2B35!important;border-color:#1C2B35!important}
.avance-stage{background:#fff!important}

/* 4e. Botones: nada de redondos con sombra ni rebotes, todos rectos como el resto */
.atg-arrow,.atfb-nav-arrow,.lb-arrow,.atg-expand,#lb-close{border-radius:4px!important;box-shadow:none!important;background:#fff!important;color:#1C2B35!important;border:1px solid #1C2B35!important}

/* 5. Consulta: formulario con los pasos escritos, cartel que dice qué falta */
.bf-paso{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;margin:30px 0 14px;color:inherit}
.bf-paso:first-of-type{margin-top:0}
.bf-n{width:30px;height:30px;border:1px solid currentColor;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex:none}
.bf-ops{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}
.bf-op{text-align:left;padding:13px 16px;border:1px solid #6B7280;border-radius:4px;background:#fff;color:#111827;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-height:72px;font-size:16px}
.bf-op b{font-weight:600}
.bf-op small{font-size:14px;color:#374151}
.bf-op:hover{border-color:#1C2B35}
.bf-op[aria-pressed=true]{background:#5C7E8C;border-color:#5C7E8C;color:#fff}
.bf-op[aria-pressed=true] small{color:#fff}
.bf-ayuda{font-size:14px;color:#374151;margin-top:6px}
.form-field.err .form-input{border-color:#B42318!important;border-width:2px!important}
.bf-aviso{display:none;margin:18px 0 0;padding:14px 16px;border-left:4px solid #B42318;background:#FDF2F0;font-size:15px;color:#111827}
.bf-aviso.on{display:block}
.bf-aviso b{display:block;margin-bottom:2px}
.bf-nota{font-size:14px;color:#374151;margin-top:14px}
.bf-retomo{margin-bottom:18px;font-size:15px;color:#374151}
.bf-retomo button{background:none;border:0;font-size:14px;font-weight:600;color:#5C7E8C;text-decoration:underline;margin-left:8px;cursor:pointer}
.bf-listo h3{font-size:clamp(26px,3vw,38px);margin:14px 0 10px}
.bf-ok{width:56px;height:56px;border-radius:50%;background:#C4AA8C;color:#111820;display:flex;align-items:center;justify-content:center}
.bf-listo .bf-via{font-size:18px;color:#374151;margin-bottom:22px}
.bf-sig{border-top:1px solid #1C2B35;margin-bottom:24px}
.bf-sig a{display:flex;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid #D6D0C8;text-decoration:none;font-size:16px;font-weight:600;color:#111827}
.bf-sig a:hover{background:#E3EAED}
.bf-listo .form-submit{width:auto;padding-left:28px;padding-right:28px}

#contacto .section-header{margin-bottom:56px}

/* 6. Celular: barra fija abajo en lugar del botón flotante que tapaba contenido */
.bf-bar{display:none}
.bf-flag{position:fixed;left:12px;bottom:12px;z-index:300;background:#111820;color:#fff;font-size:14px;font-weight:700;letter-spacing:.14em;padding:9px 12px;border-radius:4px;pointer-events:none}
@media (max-width:1100px){
  .projects-grid.pg-3{grid-template-columns:1fr 1fr!important}
  .projects-grid.pg-3 .project-card:nth-child(3){grid-column:1/-1;aspect-ratio:3/4;width:calc(50% - 12px);justify-self:center}
}
@media (max-width:768px){
  .projects-grid.pg-3{grid-template-columns:1fr!important}
  .projects-grid.pg-3 .project-card,.projects-grid.pg-3 .project-card:nth-child(3){aspect-ratio:3/4;width:100%}
  .projects-grid.pg-3 .project-details,.mp-grid .project-details{display:none}
  .projects-grid.pg-3 .project-info,.mp-grid .project-info{padding:18px 20px 20px}
  .project-card .project-overlay,.mp-grid .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.92) 0%,rgba(17,24,32,.8) 62%,rgba(17,24,32,.35) 86%,rgba(17,24,32,0) 100%)!important}
  .pc-av{margin-top:0;padding-top:10px;min-height:0}
  .pc-btn{height:42px;margin-top:12px}
  .project-name{min-height:0}
  .mp-grid{grid-template-columns:1fr}
  .mp-grid .project-card{aspect-ratio:3/4}
  .whatsapp-float{display:none!important}
  .mp-pronto{grid-template-columns:1fr;margin-bottom:-72px}
  .mp-pronto-vis{min-height:240px;order:-1}
  .bf-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:300;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #1C2B35}
  .bf-bar a{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:4px;text-decoration:none;font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
  .bf-bar-c{flex:1;background:#5C7E8C;color:#fff}
  .bf-bar-w{flex:0 0 52px;border:1px solid #1C2B35;color:#1C2B35}
  body{padding-bottom:72px}
  .bf-flag{display:none}
  .hb-cap{display:none}
  .hero-tag{white-space:normal!important;letter-spacing:.1em!important;line-height:1.4}
  #hero{padding-bottom:104px!important}
  .hero-social{margin-top:20px!important}
  .bf-ops{grid-template-columns:1fr}
  .contact-layout{grid-template-columns:1fr!important;gap:40px!important}
  .form-row{grid-template-columns:1fr!important}
}

/* 4f. Botones de esquinas rectas, sin bordes blancos ni redondeo */
.btn,.btn-primary,.btn-secondary,.btn-nav,.form-submit,.pc-btn,.mp-pronto-btn,.bf-op,.bf-bar a,.bf-flag,.atg-arrow,.atfb-nav-arrow,.lb-arrow,.atg-expand,#lb-close,.hero-social a{border-radius:0!important}
.hero-social a{border:0!important;background:#1C2B35!important}
#newsletter input::placeholder{color:#4B5563!important;-webkit-text-fill-color:#4B5563!important;opacity:1}

/* 4g. Tarjetas claras: foto arriba, datos sobre panel blanco; fondos que varían; Azurduy claro */

.mp-pronto{background:#DCEAF0}
.mp-pronto-in,.mp-pronto h3,.mp-pronto-z{color:#1C2B35}
.mp-pronto-tag{color:#4A6877!important}
.mp-pronto-tag::before{background:#4A6877}
.mp-pronto-d,.mp-pronto-n{color:#2B3A45}
.mp-pronto-btn{background:#1C2B35;color:#fff}
.mp-pronto-btn:hover{background:#4A6877}
.mp-credito{background:#fff;color:#1C2B35}

.stats-bar{background:#E3ECF0!important;border-color:#C9D7DD!important}
#nosotros{background:#EEF3F5!important}
#equipo{background:#fff!important}
#contacto{background:#E3ECF0!important}
.avance{background:#EEF3F5!important}
@media (max-width:768px){
}


/* Tipografía: tinta azul pizarra en vez de negro */
.stat-number,.stats-bar .stat-number *{color:#2F4B5C!important}
.stat-label{color:#4A6877!important}
.mp-pronto-in,.mp-pronto h3,.mp-pronto-z{color:#2F4B5C}
.mp-pronto-d,.mp-pronto-n{color:#3F5A6B}
.mp-pronto-btn,.mp-pronto-btn:hover{color:#fff}
.mp-pronto-btn{background:#2F4B5C}
.stats-bar{background:#DCE8EE!important}

/* Muy pronto: alineada con el mapa, por encima de la sección que sigue */
.mp-pronto{position:relative;z-index:1;background:#E8F0F4;align-items:stretch}
.mp-pronto-vis{min-height:460px}
.mp-pronto-vis img{object-position:center}

/* Portada: ficha del proyecto sobre la imagen, con contador y pestañas que muestran el tiempo */
.hero-gradient{background:linear-gradient(to right,rgba(17,24,32,.8) 0,rgba(17,24,32,.68) 32%,rgba(17,24,32,.3) 58%,rgba(17,24,32,0) 76%),linear-gradient(to top,rgba(17,24,32,.78) 0,rgba(17,24,32,.45) 22%,rgba(17,24,32,0) 40%),linear-gradient(to bottom,rgba(17,24,32,.78) 0,rgba(17,24,32,.5) 9%,rgba(17,24,32,0) 22%)!important}
.hb-cap{align-items:stretch;text-align:left;width:min(380px,32vw);gap:6px}
.hb-cap .hb-e{display:flex;align-items:center;gap:10px}
.hb-cap .hb-e::before{content:"";width:4px;height:16px;background:#fff}
.hb-cap strong{font-size:34px;line-height:1.1;margin-bottom:8px}
.hb-cap a{display:flex;align-items:center;justify-content:center;height:46px;border:1px solid #fff;background:transparent;color:#fff;text-shadow:none;letter-spacing:.1em}
.hb-cap a:hover{background:#fff;color:#2F4B5C}
.hb-dots{display:flex;gap:10px;margin-top:14px}
.hb-dots button{flex:1;width:auto;height:auto;padding:14px 0 0;font:600 14px/1.2 inherit;font-family:inherit;color:#F1F5F7;text-align:left;position:relative;border:0;border-top:2px solid rgba(255,255,255,.4);text-shadow:0 1px 10px rgba(0,0,0,.6);background:none;cursor:pointer;display:block}
.hb-dots button::after{display:none}
.hb-dots button[aria-current=true]{color:#fff}
.hb-dots button[aria-current=true]::before{content:"";position:absolute;left:0;top:-2px;height:2px;background:#fff;animation:hbp 6s linear forwards}
@keyframes hbp{from{width:0}to{width:100%}}
@media (prefers-reduced-motion:reduce){.hb-dots button[aria-current=true]::before{animation:none;width:100%}}

/* Tarjetas verticales 3:4 con la portada regenerada a ese formato */
.projects-grid.pg-3 .project-card,.mp-grid .project-card{aspect-ratio:3/4}
.projects-grid.pg-3 .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.9) 0,rgba(17,24,32,.8) 300px,rgba(17,24,32,.3) 400px,rgba(17,24,32,0) 470px)!important}
.mp-grid .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.9) 0,rgba(17,24,32,.8) 235px,rgba(17,24,32,.3) 320px,rgba(17,24,32,0) 390px)!important}
.project-card .pc-btn{background:#fff;color:#2F4B5C}

.mp-pronto-vis img{object-position:center}
.mp-pin{position:absolute;left:30%;top:45%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:#fff;border:6px solid #2F4B5C;box-shadow:0 0 0 3px #fff,0 0 0 14px rgba(255,255,255,.4)}
.mp-pin-l{position:absolute;left:calc(30% + 26px);top:calc(45% - 20px);background:#fff;color:#2F4B5C;font-size:15px;font-weight:600;padding:10px 14px}

/* Tarjetas: menos texto encima para que la portada se vea; el detalle va en la ficha */
.projects-grid.pg-3 .project-details,.mp-grid .project-details{display:flex!important}
.projects-grid.pg-3 .project-card{aspect-ratio:18/25}
.projects-grid.pg-3 .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.9) 0,rgba(17,24,32,.85) 305px,rgba(17,24,32,.4) 375px,rgba(17,24,32,0) 440px)!important}
.mp-grid .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.9) 0,rgba(17,24,32,.82) 190px,rgba(17,24,32,.35) 255px,rgba(17,24,32,0) 320px)!important}
/* Orden de fondos: blanco y celeste alternados, azul oscuro al final */
.stats-bar{background:#E8F0F4!important;border-color:#D1DEE5!important}
#nosotros{background:#fff!important}
#equipo{background:#E8F0F4!important}
#contacto{background:#fff!important}
.avance{background:#E8F0F4!important}
.mp-pronto{background:#E8F0F4}

/* Portada: ficha alineada a la derecha */
.hb-cap{text-align:right;align-items:stretch}
.hb-cap .hb-e{flex-direction:row-reverse;justify-content:flex-start}
.hb-dots button{text-align:right}
@media (max-width:768px){.projects-grid.pg-3 .project-details,.mp-grid .project-details{display:none!important}}

/* 4i. Menús del encabezado: paneles planos, claros y ordenados */
#header.header--dropdown-open,#header.scrolled.header--dropdown-open{background:#4A6877!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#dd-overlay{background:rgba(17,24,32,.22)!important}
.nav-dropdown{background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:0!important;border-top:3px solid #2F4B5C!important;border-radius:0!important;box-shadow:0 24px 48px rgba(17,24,32,.18)!important;padding:30px 34px!important;color:#2F4B5C}
.nav-item-wrap.dd-wide .nav-dropdown{padding:30px 6% 34px!important}
.nav-item-wrap.dd-wide .nav-dropdown::after{display:none}
.nav-dropdown .dd-title{font-size:22px!important;font-weight:600!important;color:#2F4B5C!important;line-height:1.25!important;margin-bottom:10px!important}
.nav-dropdown .dd-desc{font-size:15px!important;color:#3F5A6B!important;line-height:1.6!important;margin-bottom:20px!important}
.nav-dropdown .dd-cta{display:inline-flex!important;align-items:center;font-size:14px!important;font-weight:600!important;letter-spacing:.1em!important;color:#2F4B5C!important;padding:0 0 4px!important;border-bottom:2px solid #2F4B5C;margin-top:0!important}
.nav-dropdown .dd-cta:hover{color:#4A6877!important;border-bottom-color:#4A6877}
.dropdown-nosotros,.dropdown-novedades{min-width:340px!important;max-width:380px!important}
.dd-projects-grid{grid-template-columns:repeat(6,1fr)!important;gap:20px!important}
.dd-project{border-radius:0!important;gap:0!important;background:#fff}
.dd-project img{aspect-ratio:3/4;transition:transform .35s ease-out}
.dd-project:hover img{transform:scale(1.03)}
.dd-project{overflow:hidden}
.dd-project small{display:block;margin:12px 0 2px;font-size:14px;font-weight:600;color:#4A6877}
.nav-dropdown .dd-project span{font-size:17px!important;font-weight:600!important;letter-spacing:0!important;color:#2F4B5C!important;padding:0!important}
.dd-project:hover span{text-decoration:underline;text-underline-offset:4px}
.dd-member img{opacity:1!important;width:52px!important;height:52px!important}
.dd-member-name{font-size:16px!important;font-weight:600!important;color:#2F4B5C!important}
.dd-member-role{font-size:14px!important;color:#4A6877!important;letter-spacing:.02em!important;text-transform:none!important}
.dd-contact-label{font-size:14px!important;font-weight:600!important;color:#4A6877!important;letter-spacing:.06em!important}
.dd-contact-value{font-size:16px!important;color:#2F4B5C!important;font-weight:500}
.dd-contact-icon{color:#4A6877!important}
.dd-consultar-tagline{font-size:20px!important;color:#2F4B5C!important;font-family:inherit!important;font-weight:600}
.dd-consultar-btn{background:#2F4B5C!important;border:0!important;color:#fff!important;font-size:14px!important;font-weight:600!important;letter-spacing:.1em!important;padding:14px 24px!important;border-radius:0!important}
.dd-consultar-btn:hover{background:#4A6877!important}
.dd-nl-sep{background:#D5DEE2!important;height:1px}
.dd-nl-input{background:#fff!important;border:1px solid #6B7280!important;color:#111827!important;font-size:15px!important;border-radius:0!important;padding:12px 14px!important}
.dd-nl-btn{background:#2F4B5C!important;color:#fff!important;font-size:14px!important;font-weight:600!important;border:0!important;border-radius:0!important;padding:13px 20px!important}
.dd-nl-msg{font-size:14px!important;color:#2F4B5C!important}
.dd-project small{letter-spacing:0!important;text-transform:none!important;white-space:normal}
.nav-dropdown .dd-title{white-space:normal!important}
.dropdown-nosotros,.dropdown-novedades{width:400px}
.nav-dropdown a.dd-cta,.nav-dropdown a.dd-cta:visited{color:#2F4B5C!important;-webkit-text-fill-color:#2F4B5C!important}
.nav-dropdown a.dd-cta:hover{color:#4A6877!important;-webkit-text-fill-color:#4A6877!important}
.nav-dropdown .dd-consultar-btn,.nav-dropdown .dd-nl-btn{-webkit-text-fill-color:#fff!important}

/* 4j. Ajustes: pestañas centradas, 10 % menos de oscuridad, redes en vidrio, cifras con retícula, lote marcado, orden de fondos */
.hb-dots button{text-align:center!important}
.hero-gradient{background:linear-gradient(to right,rgba(17,24,32,.72) 0,rgba(17,24,32,.61) 32%,rgba(17,24,32,.27) 58%,rgba(17,24,32,0) 76%),linear-gradient(to top,rgba(17,24,32,.7) 0,rgba(17,24,32,.4) 22%,rgba(17,24,32,0) 40%),linear-gradient(to bottom,rgba(17,24,32,.7) 0,rgba(17,24,32,.45) 9%,rgba(17,24,32,0) 22%)!important}
.projects-grid.pg-3 .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.81) 0,rgba(17,24,32,.77) 305px,rgba(17,24,32,.36) 375px,rgba(17,24,32,0) 440px)!important}
.mp-grid .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.81) 0,rgba(17,24,32,.74) 190px,rgba(17,24,32,.32) 255px,rgba(17,24,32,0) 320px)!important}
.hero-social a{background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.6)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 0 0 1px rgba(17,24,32,.12)}
.hero-social a:hover{background:rgba(255,255,255,.28)!important}

.stats-bar{display:grid!important;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:st;padding:0 6%!important;background:#E8F0F4!important;border-top:3px solid #2F4B5C!important;border-bottom:1px solid #C9D7DD!important}
.stats-bar .stat-item{counter-increment:st;display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:34px 28px 38px!important;border-left:1px solid #C9D7DD;position:relative}
.stats-bar .stat-item:last-child{border-right:1px solid #C9D7DD}
.stats-bar .stat-item::before{content:"0" counter(st);font-size:14px;font-weight:600;letter-spacing:.12em;color:#4A6877;margin-bottom:18px}
.stats-bar .stat-item::after{content:"";position:absolute;left:28px;top:-2px;width:36px;height:3px;background:#4A6877}
.stats-bar .stat-number{font-size:clamp(56px,6.2vw,92px)!important;font-weight:300!important;line-height:1!important;letter-spacing:-.03em;margin-bottom:14px}
.stats-bar .stat-label{text-align:left!important;max-width:22ch;line-height:1.4}
@media (max-width:768px){.stats-bar{grid-template-columns:1fr 1fr;padding:0 16px!important}.stats-bar .stat-item{padding:24px 16px 26px!important}}

.mp-pin{width:26px;height:26px;margin:-13px 0 0 -13px;background:#E8590C;border:5px solid #fff;box-shadow:0 0 0 2px #E8590C,0 0 0 0 rgba(232,89,12,.6);animation:mpPulse 1.8s ease-out infinite}
@keyframes mpPulse{0%{box-shadow:0 0 0 2px #E8590C,0 0 0 0 rgba(232,89,12,.55)}100%{box-shadow:0 0 0 2px #E8590C,0 0 0 34px rgba(232,89,12,0)}}
@media (prefers-reduced-motion:reduce){.mp-pin{animation:none}}
.mp-pin-l{background:#E8590C;color:#fff;font-size:16px;padding:11px 16px;left:calc(30% + 30px);top:calc(45% - 22px)}
.mp-pin-l::before{content:"";position:absolute;left:-8px;top:50%;margin-top:-8px;border:8px solid transparent;border-left:0;border-right-color:#E8590C}

.mp-pronto{background:#DCE8EE!important}
#nosotros{background:#E8F0F4!important}
#equipo{background:#fff!important}
#contacto{background:#fff!important;border-top:1px solid #D5DEE2}

/* 4k. Novedades de la semana */
#noticias{background:#fff!important}
.nv-head{max-width:760px;margin-bottom:44px}
.nv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.nv-card{display:flex;flex-direction:column;background:#fff;border:1px solid #C9D7DD;border-top:3px solid #2F4B5C}
.nv-img{position:relative;aspect-ratio:16/10;overflow:hidden;background:#E8F0F4}
.nv-img img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}
.nv-tag{position:absolute;left:0;bottom:0;background:#2F4B5C;color:#fff;font-size:14px;font-weight:600;letter-spacing:.06em;padding:9px 16px}
.nv-n{position:absolute;right:14px;top:10px;font-size:14px;font-weight:700;letter-spacing:.12em;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.nv-body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}
.nv-v{font-size:clamp(40px,3.8vw,58px);font-weight:300;line-height:1;letter-spacing:-.03em;color:#2F4B5C;margin:0 0 14px}
.nv-v small{font-size:16px;font-weight:600;letter-spacing:0;color:#4A6877}
.nv-k{font-size:20px;font-weight:600;line-height:1.3;color:#2F4B5C;margin:0 0 10px}
.nv-d{font-size:16px;line-height:1.6;color:#374151;margin:0 0 18px;flex:1}
.nv-s{font-size:14px;color:#4A6877;margin:0;padding-top:14px;border-top:1px solid #D5DEE2}
.nv-s a{color:#2F4B5C;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.nv-prox{margin-top:40px;padding:20px 24px;background:#E8F0F4;border-left:4px solid #2F4B5C;font-size:16px;color:#2F4B5C;font-weight:500}
@media (max-width:1100px){.nv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.nv-grid{grid-template-columns:1fr}}

/* 4l. Brochure: el visor ocupa todo el ancho del bloque */
#brochure{padding-left:0!important;padding-right:0!important}
#brochure .section-tag,#brochure .section-title{padding-left:6%;padding-right:6%}
#brochure .atfb-viewer{max-width:none!important;width:100%;margin:36px 0 0!important;border-radius:0!important;box-shadow:none!important}
#brochure .atfb-canvas-wrap{padding:0!important;min-height:0}
#brochure .atfb-canvas-wrap{display:flex;justify-content:center}
#brochure .atfb-book-wrap{max-width:100%!important;width:100%;margin:0 auto;border-radius:0;box-shadow:none}
#brochure,#brochure .atfb-viewer,#brochure .atfb-canvas-wrap{background:#E8F0F4!important}


.dropdown-novedades{min-width:460px!important;max-width:460px!important;width:460px}
.dd-kick{font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#4A6877;margin:0 0 6px;display:flex;align-items:center;gap:10px}
.dd-kick::before{content:"";width:4px;height:14px;background:#4A6877}
.dropdown-novedades .dd-title{margin-bottom:18px!important}
.dd-news{list-style:none;margin:0 0 22px;padding:0;border-top:1px solid #D5DEE2}
.dd-news li{display:grid;grid-template-columns:84px 118px 1fr;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid #D5DEE2;white-space:normal}
.dd-news img{width:84px;height:60px;object-fit:cover;display:block}
.dd-nv-v{font-size:22px;font-weight:600;color:#2F4B5C;letter-spacing:-.01em;line-height:1.1}
.dd-nv-t{font-size:15px;line-height:1.4;color:#3F5A6B}
.nav-dropdown a.dd-cta-btn{display:flex!important;justify-content:center;width:100%;border:0!important;background:#2F4B5C;color:#fff!important;-webkit-text-fill-color:#fff!important;padding:15px 20px!important}
.nav-dropdown a.dd-cta-btn:hover{background:#4A6877;color:#fff!important;-webkit-text-fill-color:#fff!important}
.nav-dropdown .dd-nv-v{font-size:24px!important;font-weight:600!important;color:#2F4B5C!important;letter-spacing:-.01em}
.nav-dropdown .dd-nv-t{font-size:15px!important}
.dd-news li{grid-template-columns:84px 128px 1fr!important}
#header .nav-dropdown .dd-news li .dd-nv-v{font-size:24px!important;line-height:1.1!important}
.nav-dropdown a.dd-cta-btn,.nav-dropdown a.dd-cta-btn:visited,.nav-dropdown a.dd-cta-btn:hover,.nav-dropdown a.dd-cta-btn:focus{color:#fff!important;-webkit-text-fill-color:#fff!important}

/* 4m. Sistema de fondos: texto según el tono */
.fondo-oscuro,.fondo-oscuro h2,.fondo-oscuro h3,.fondo-oscuro p,.fondo-oscuro span,.fondo-oscuro em,.fondo-oscuro .section-tag{color:#fff!important;-webkit-text-fill-color:#fff!important}
.fondo-oscuro .btn-white,.fondo-oscuro a.btn-white{background:#fff!important;color:#1C2B35!important;-webkit-text-fill-color:#1C2B35!important}
.cta-banner.fondo-oscuro{border-top:0}
#brochure .atfb-viewer,#brochure .atfb-canvas-wrap,#brochure{background:transparent!important}
.mp-pronto{background:#fff!important;border-top:1px solid #D5DEE2}
.mp-pronto-in,.mp-pronto h3,.mp-pronto-z{color:#2F4B5C}
footer{background:#1C2B35!important}

#brochure .atfb-controls-bottom{background:transparent!important;border-top:1px solid #C9D7DD!important}

/* Brochure: barra de control clara, con botones rotulados */
#brochure .atfb-controls-bottom{display:flex;align-items:center;gap:18px;padding:18px 6%!important;background:transparent!important;border-top:1px solid #C9D7DD!important}
#brochure .atfb-progress-btn{height:46px;padding:0 20px;border:1px solid #2F4B5C!important;background:#fff!important;color:#2F4B5C!important;font:600 14px/1 Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;border-radius:0;display:flex;align-items:center;gap:8px}
#brochure .atfb-progress-btn:first-of-type::after{content:"Anterior"}
#brochure .atfb-progress-btn:last-of-type::before{content:"Siguiente"}
#brochure .atfb-progress-btn:last-of-type{flex-direction:row}
#brochure .atfb-progress-btn:hover{background:#2F4B5C!important;color:#fff!important}
#brochure .atfb-progress-track{height:6px!important;background:#C9D7DD!important;border-radius:0!important}
#brochure .atfb-progress-fill{background:#2F4B5C!important;border-radius:0!important}
#brochure .atfb-progress-thumb{width:20px!important;height:20px!important;background:#2F4B5C!important;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #2F4B5C!important}
#brochure .atfb-page-counter{font:600 15px/1 Montserrat,sans-serif!important;color:#2F4B5C!important;min-width:112px!important;text-align:right}
#brochure .atfb-page-counter::before{content:"Página "}

/* Avance de obra: el título de cada etapa va en blanco sobre la foto */
.avance-stage .avance-cap-title,.avance-stage .avance-cap-tag,.avance-stage .avance-note{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 1px 12px rgba(0,0,0,.55)}

.dd-projects-grid{grid-template-columns:repeat(6,minmax(0,190px))!important;justify-content:start}

/* Formulario de consulta en tres filas: datos, mensaje y envío */
.contact-form.bf{display:grid;grid-template-columns:1fr;row-gap:0}
.contact-form.bf>*{grid-column:1/-1}
.contact-form.bf .form-row{display:contents}
.contact-form.bf .form-row .form-field{grid-column:1/-1;min-width:0;margin-bottom:18px}
.contact-form.bf .form-textarea{min-height:96px;height:96px}
@media (max-width:900px){.contact-form.bf{grid-template-columns:1fr}.contact-form.bf .form-row .form-field{grid-column:1/-1}}
.contact-form.bf .form-field-full{margin-top:20px}

/* 4n. Tarjetas: el render protagonista. En reposo solo estado, nombre, lugar y avance; al pasar el cursor se abre el detalle */
.projects-grid.pg-3 .project-details,.mp-grid .project-details,.pc-av-e{max-height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden;opacity:0;transition:max-height .35s ease,opacity .25s ease,margin .35s ease}
.project-card:hover .project-details,.project-card:focus-visible .project-details,.project-card:hover .pc-av-e,.project-card:focus-visible .pc-av-e{max-height:90px!important;opacity:1;margin-top:12px!important}
.project-card:hover .project-details,.project-card:focus-visible .project-details{padding-top:12px!important;border-top:1px solid rgba(255,255,255,.35)!important}
.pc-av{min-height:0!important;margin-top:10px;padding-top:12px}
.projects-grid.pg-3 .project-card .project-overlay,.mp-grid .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.84) 0,rgba(17,24,32,.72) 150px,rgba(17,24,32,.28) 230px,rgba(17,24,32,0) 300px)!important}
.project-card .project-overlay::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(17,24,32,.9) 0,rgba(17,24,32,.82) 330px,rgba(17,24,32,.3) 430px,rgba(17,24,32,0) 500px);opacity:0;transition:opacity .35s ease}
.project-card:hover .project-overlay::after,.project-card:focus-visible .project-overlay::after{opacity:1}
.project-name{min-height:0!important}
.project-location{min-height:0!important}
@media (hover:none),(max-width:768px){
  .pc-av-e,.projects-grid.pg-3 .project-details,.mp-grid .project-details{display:none!important}
  .project-card .project-overlay::after{display:none}
}

/* Botón «Ver proyecto» siempre visible: indica que la tarjeta se toca */
.project-card .pc-btn{height:42px;margin-top:14px!important;max-height:none!important;opacity:1!important}
.projects-grid.pg-3 .project-card .project-overlay,.mp-grid .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.86) 0,rgba(17,24,32,.76) 210px,rgba(17,24,32,.3) 290px,rgba(17,24,32,0) 360px)!important}

/* Página del newsletter */
#newsletter-ultimo{background:#fff}
.nl-intro{max-width:760px;margin-bottom:44px}
.nl-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.nl-card{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);border:1px solid #C9D7DD;border-top:3px solid #2F4B5C;background:#fff}
.nl-img{position:relative;display:block;overflow:hidden;min-height:340px;background:#E8F0F4}
.nl-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nl-tag{position:absolute;left:0;bottom:0;background:#2F4B5C;color:#fff;font-size:14px;font-weight:600;letter-spacing:.06em;padding:9px 16px}
.nl-n{position:absolute;right:14px;top:10px;font-size:14px;font-weight:700;letter-spacing:.12em;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.nl-body{padding:28px 28px 30px;display:flex;flex-direction:column}
.nl-nom{font-size:24px;font-weight:600;color:#2F4B5C;margin:0 0 4px}
.nl-lug{font-size:15px;color:#4A6877;margin:0 0 18px}
.nl-tit{font-size:20px;font-weight:600;line-height:1.3;color:#2F4B5C;margin:0 0 10px}
.nl-txt{font-size:16px;line-height:1.6;color:#374151;margin:0 0 22px;flex:1}
.nl-cta{align-self:flex-start;display:inline-flex;align-items:center;height:44px;padding:0 22px;background:#2F4B5C;color:#fff!important;font-size:14px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.nl-cta:hover{background:#4A6877}
.nl-pie{margin-top:36px;padding:18px 22px;background:#E8F0F4;border-left:4px solid #2F4B5C;font-size:15px;color:#2F4B5C}
.nl-pie a{color:#2F4B5C;font-weight:600;text-decoration:underline}
@media (max-width:1100px){.nl-grid{grid-template-columns:1fr}}
@media (max-width:640px){.nl-card{grid-template-columns:1fr}.nl-img{min-height:240px}}
#newsletter-ultimo{padding:96px 6% 100px!important}
#newsletter-ultimo .section-tag{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#4A6877}
#newsletter-ultimo .section-title{font-size:clamp(32px,3.6vw,52px);font-weight:300;line-height:1.1;color:#2F4B5C;margin:14px 0 0}
#newsletter-ultimo .section-title em{font-style:normal;color:#5C7E8C}
.dropdown-noticias{min-width:460px!important;max-width:460px!important;width:460px}
.dropdown-noticias .dd-title{margin-bottom:18px!important}

/* Hero de Novedades: claro, con un mosaico de los proyectos */
.page-hero.nl-hero{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:48px;padding:150px 6% 80px!important;min-height:0!important;background:#E8F0F4!important}
.nl-hero .page-hero-tag{color:#4A6877!important;-webkit-text-fill-color:#4A6877!important}
.nl-hero .page-hero-title,.nl-hero .page-hero-title span{color:#2F4B5C!important;-webkit-text-fill-color:#2F4B5C!important;font-size:clamp(40px,5vw,76px)!important;line-height:1.05;text-transform:none!important;letter-spacing:-.02em}
.nl-hero .page-hero-sub{color:#3F5A6B!important;font-size:19px!important;max-width:34ch}
.nl-hero-cta{display:inline-flex;align-items:center;height:48px;padding:0 26px;margin-top:26px;background:#2F4B5C;color:#fff!important;font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}
.nl-hero-cta:hover{background:#4A6877}
.nl-hero-mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}
.nl-hero-mosaic img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;box-shadow:0 18px 36px rgba(47,75,92,.18)}
.nl-hero-mosaic img:nth-child(odd){transform:translateY(-28px)}
.nl-hero-mosaic img:nth-child(even){transform:translateY(18px)}
@media (max-width:900px){.page-hero.nl-hero{grid-template-columns:1fr;padding:120px 6% 56px!important}.nl-hero-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}.nl-hero-mosaic img:nth-child(n){transform:none}}
body:has(.nl-hero) #header{background:#4A6877!important}
.page-hero.nl-hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr)!important}
.nl-hero-mosaic{gap:16px}
.page-hero.nl-hero{grid-template-columns:minmax(0,.55fr) minmax(0,1.65fr)!important;grid-template-areas:"tag tag" "title title" "sub mosaic" "cta mosaic";column-gap:40px;row-gap:0;align-items:start!important;padding:140px 6% 90px!important}
.nl-hero-txt{display:contents}
.nl-hero .page-hero-tag{grid-area:tag;margin-bottom:14px}
.nl-hero .page-hero-title{grid-area:title;white-space:nowrap;font-size:clamp(44px,6vw,92px)!important;margin:0 0 28px!important}
.nl-hero .page-hero-sub{grid-area:sub;margin:0!important}
.nl-hero .nl-hero-cta{grid-area:cta;align-self:start;justify-self:start}
.nl-hero-mosaic{grid-area:mosaic;gap:18px;padding-top:30px}
@media (max-width:900px){.page-hero.nl-hero{grid-template-columns:1fr!important;grid-template-areas:"tag" "title" "sub" "cta" "mosaic"}.nl-hero .page-hero-title{white-space:normal}}

/* Hero de Novedades: título, bajada y un índice de cuatro piezas iguales que lleva a cada novedad */
.page-hero.nl-hero{display:block!important;padding:140px 6% 72px!important}
.nl-hero-head{margin-bottom:44px}
.nl-hero .page-hero-tag{margin-bottom:14px}
.nl-hero .page-hero-title{white-space:nowrap;margin:0 0 18px!important}
.nl-hero .page-hero-sub{max-width:52ch;margin:0!important}
.nl-hero-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:3px solid #2F4B5C}
.nl-idx{display:flex;flex-direction:column;padding:22px 24px 26px;border-left:1px solid #C9D7DD;text-decoration:none;position:relative;background:transparent;transition:background .2s}
.nl-idx:first-child{border-left:0;padding-left:0}
.nl-idx:last-child{padding-right:0}
.nl-idx:hover{background:rgba(255,255,255,.55)}
.nl-idx img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:16px}
.nl-idx-n{font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#4A6877;margin-bottom:6px}
.nl-idx-nom{font-size:20px;font-weight:600;color:#2F4B5C;line-height:1.2}
.nl-idx-t{font-size:16px;color:#3F5A6B;margin:4px 0 14px;line-height:1.4;flex:1}
.nl-idx-go{align-self:flex-start;font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#2F4B5C;border-bottom:2px solid #2F4B5C;padding-bottom:3px}
html{scroll-behavior:smooth}
.nl-card{scroll-margin-top:110px}
@media (max-width:1000px){.nl-hero-index{grid-template-columns:repeat(2,minmax(0,1fr))}.nl-idx:nth-child(odd){border-left:0;padding-left:0}.nl-idx:nth-child(even){padding-right:0}.nl-hero .page-hero-title{white-space:normal}}
@media (max-width:560px){.nl-hero-index{grid-template-columns:1fr}.nl-idx{border-left:0;padding-left:0;padding-right:0}}
.nl-hero-index{column-gap:28px}
.nl-idx,.nl-idx:first-child,.nl-idx:last-child{padding:24px 0 26px!important;border-left:0!important}
.nl-idx:hover{background:transparent}
.nl-idx:hover .nl-idx-go{color:#4A6877;border-bottom-color:#4A6877}
.nl-idx img{transition:filter .2s}
.nl-idx:hover img{filter:brightness(1.06)}
@media (max-width:1000px){.nl-hero-index{row-gap:12px}}

/* Página de Novedades: el newsletter cierra la página, sin banners colgados */
body:has(#newsletter-ultimo) #newsletter{padding:72px 6% 76px!important;min-height:0!important;align-items:center}
body:has(#newsletter-ultimo) footer{border-top:1px solid #3F5A6B}

/* Newsletter en tono claro (página de Novedades): el pie oscuro queda diferenciado */
#newsletter.fondo-celeste,#newsletter.fondo-celeste h2,#newsletter.fondo-celeste h3,#newsletter.fondo-celeste p,#newsletter.fondo-celeste span,#newsletter.fondo-celeste em,#newsletter.fondo-celeste label{color:#2F4B5C!important;-webkit-text-fill-color:#2F4B5C!important}
#newsletter.fondo-celeste .section-tag::before{background:#4A6877!important}
#newsletter.fondo-celeste input{border:1px solid #6B7280!important;background:#fff!important}
#newsletter.fondo-celeste .btn-white,#newsletter.fondo-celeste button{background:#2F4B5C!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:0!important}
body:has(#newsletter-ultimo) footer{border-top:0}

.bro-ayuda{display:inline-flex;align-items:center;gap:14px;margin:18px 6% 0;padding:14px 22px 14px 18px;background:#2F4B5C;color:#fff;font-size:17px;font-weight:600;letter-spacing:.01em}
.bro-ayuda::before{content:"\2039  \203A";font-size:30px;line-height:1;font-weight:600;letter-spacing:.25em;color:#fff;animation:broFlecha 1.6s ease-in-out infinite}
@keyframes broFlecha{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
@media (prefers-reduced-motion:reduce){.bro-ayuda::before{animation:none}}
.gal-ayuda{margin-bottom:22px}

/* El avance (etapa, porcentaje y barra) aparece al acercar el cursor; en pantallas táctiles queda visible */
.pc-av{max-height:0!important;overflow:hidden;opacity:0;margin-top:0!important;padding-top:0!important;border-top:0!important;transition:max-height .35s ease,opacity .25s ease,margin .35s ease,padding .35s ease}
.project-card:hover .pc-av,.project-card:focus-visible .pc-av{max-height:120px!important;opacity:1;margin-top:10px!important;padding-top:12px!important;border-top:1px solid rgba(255,255,255,.35)!important}
@media (hover:none),(max-width:768px){.pc-av{max-height:none!important;opacity:1;margin-top:10px!important;padding-top:10px!important;border-top:1px solid rgba(255,255,255,.35)!important}.pc-av-e{display:none!important}}

/* Degradé más corto: en reposo la tarjeta muestra menos texto, así que el oscuro ocupa menos */
.projects-grid.pg-3 .project-card .project-overlay,.mp-grid .project-card .project-overlay{background:linear-gradient(to top,rgba(17,24,32,.84) 0,rgba(17,24,32,.74) 125px,rgba(17,24,32,.28) 185px,rgba(17,24,32,0) 240px)!important}
.project-card .project-overlay::after{background:linear-gradient(to top,rgba(17,24,32,.9) 0,rgba(17,24,32,.82) 290px,rgba(17,24,32,.3) 390px,rgba(17,24,32,0) 460px)}
/* Cinco noticias: tres arriba y dos abajo, a mitad de ancho cada una */
.nv-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.nv-card{grid-column:span 2}
.nv-card:nth-child(n+4){grid-column:span 3}
.nv-card:nth-child(n+4) .nv-img{aspect-ratio:21/9}
@media (max-width:1100px){.nv-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.nv-card,.nv-card:nth-child(n+4){grid-column:auto}.nv-card:nth-child(5){grid-column:1/-1}}
@media (max-width:640px){.nv-grid{grid-template-columns:1fr!important}}

/* 4o. CTAs: un solo sistema. Primario = relleno azul pizarra; sobre oscuro = relleno blanco; secundario = contorno. Todos planos, en mayúsculas, 14 px */
.btn-primary,.form-submit,.dd-consultar-btn,.nl-cta,.mp-pronto-btn,.nav-dropdown a.dd-cta-btn{background:#2F4B5C!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:0!important}
.btn-primary:hover,.form-submit:hover,.dd-consultar-btn:hover,.nl-cta:hover,.mp-pronto-btn:hover,.nav-dropdown a.dd-cta-btn:hover{background:#4A6877!important}
.btn-primary,.btn-ghost,.btn-white,.form-submit,.pc-btn,.mp-pronto-btn,.nl-cta,.nl-hero-cta,.dd-consultar-btn,.dd-nl-btn{border-radius:0!important;font-size:14px!important;font-weight:600!important;letter-spacing:.1em!important;text-transform:uppercase!important;min-height:46px}
.btn-ghost{background:transparent!important;border:1px solid #fff!important;color:#fff!important}
.btn-ghost:hover{background:#fff!important;color:#2F4B5C!important}
.btn-white{background:#fff!important;color:#2F4B5C!important;-webkit-text-fill-color:#2F4B5C!important}
.btn-white:hover{background:#E8F0F4!important}
.pc-btn{background:#fff!important;color:#2F4B5C!important}
.ov-nl-pagebtn,.ov-nl-btn{background:#fff!important;color:#2F4B5C!important;border-radius:0!important}

/* Brochure: la hoja se despega por la esquina y se dobla, como papel. Cada pase muestra el dorso de la hoja y la sombra del pliegue */
.atfb-flipstack{perspective:none!important}
.atfb-page{transform:none!important}
.atfb-page.atfb-flip-out-next{z-index:5!important;animation:atfbWipeNext 1s cubic-bezier(.5,.1,.3,1) forwards!important}
.atfb-page.atfb-flip-in-next{z-index:3!important;animation:none!important}
.atfb-page.atfb-flip-in-prev{z-index:5!important;animation:atfbWipePrev 1s cubic-bezier(.5,.1,.3,1) forwards!important}
.atfb-page.atfb-flip-out-prev{z-index:3!important;animation:none!important}
@keyframes atfbWipeNext{from{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}to{clip-path:polygon(0 0,0 0,0 100%,0 100%)}}
@keyframes atfbWipePrev{from{clip-path:polygon(0 0,0 0,0 100%,0 100%)}to{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}}
.atfb-flipstack::before,.atfb-flipstack::after{content:"";position:absolute;top:0;bottom:0;z-index:9;pointer-events:none;opacity:0}
/* dorso de la hoja (el papel visto desde atrás) */
.atfb-flipstack::after{background:linear-gradient(to right,#cfc8ba 0,#ece7db 18%,#f6f2e9 55%,#e3ddd0 100%);box-shadow:-18px 0 30px rgba(0,0,0,.28)}
/* sombra del pliegue sobre la hoja de abajo */
.atfb-flipstack::before{width:18%;background:linear-gradient(to right,rgba(0,0,0,.32),rgba(0,0,0,0))}
.atfb-flipstack[data-turn=next]::after{animation:atfbFlapNext 1s cubic-bezier(.5,.1,.3,1) forwards}
.atfb-flipstack[data-turn=next]::before{animation:atfbShadeNext 1s cubic-bezier(.5,.1,.3,1) forwards}
.atfb-flipstack[data-turn=prev]::after{animation:atfbFlapPrev 1s cubic-bezier(.5,.1,.3,1) forwards;box-shadow:18px 0 30px rgba(0,0,0,.28)}
.atfb-flipstack[data-turn=prev]::before{animation:atfbShadePrev 1s cubic-bezier(.5,.1,.3,1) forwards}
@keyframes atfbFlapNext{0%{left:100%;width:0;opacity:1}100%{left:-100%;width:100%;opacity:1}}
@keyframes atfbShadeNext{0%{left:100%;opacity:1}100%{left:0;opacity:.2}}
@keyframes atfbFlapPrev{0%{left:0;width:0;opacity:1}100%{left:100%;width:100%;opacity:1}}
@keyframes atfbShadePrev{0%{left:0;opacity:1}100%{left:100%;opacity:.2}}
@media (prefers-reduced-motion:reduce){.atfb-flipstack::before,.atfb-flipstack::after{display:none}.atfb-page.atfb-flip-out-next,.atfb-page.atfb-flip-in-prev{animation:none!important}}
.gal-ayuda{margin-left:0!important}

/* Portadas de proyecto: el texto se lee. Degradé desde la izquierda y abajo, con el render libre a la derecha */
.project-hero-gradient{background:linear-gradient(to right,rgba(17,24,32,.78) 0,rgba(17,24,32,.62) 34%,rgba(17,24,32,.22) 60%,rgba(17,24,32,0) 78%),linear-gradient(to top,rgba(17,24,32,.82) 0,rgba(17,24,32,.45) 28%,rgba(17,24,32,0) 52%),linear-gradient(to bottom,rgba(17,24,32,.72) 0,rgba(17,24,32,.4) 10%,rgba(17,24,32,0) 24%)!important}
.project-hero-content,.project-hero-content *{text-shadow:0 1px 14px rgba(0,0,0,.55)}
.project-hero-content .breadcrumb,.project-hero-content .breadcrumb a,.project-hero-content .breadcrumb span{color:#fff!important;font-weight:600}
.project-hero-content .status-badge,.project-hero-content .project-status-badge{background:rgba(17,24,32,.72)!important;border:1px solid #fff!important;color:#fff!important}

/* Texto mínimo 14 px: lo que medido a 375, 768 y 1024 px quedaba en 11 a 13 px */
.atfb-mobile-cta,.atg-tab,.map-embed p,.page-hero-tag,.hb-dots button,.ov-label,.ov-chevron{font-size:14px!important}

/* Menú Proyectos en dos grupos, con rótulo de grupo y estado de más peso */
.dd-projects-grid .dd-grupo{grid-column:span 3;margin:0;padding:0 0 10px;border-bottom:4px solid #2F4B5C;font-family:inherit;font-size:20px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#1C2B35}
.dd-project small{white-space:nowrap!important;margin:12px 0 4px!important;padding-left:10px;border-left:4px solid #2F4B5C;font-size:14px!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#1C2B35!important}

/* Portada de escritorio: sin botones, sin panel de proyectos y sin etiqueta BETA (pedido de Matías, 2026-10-27). Las diapositivas siguen rotando; en teléfono quedan los botones. */
.bf-flag,#hero .hb-cap{display:none!important}
@media (min-width:641px){#hero .hero-ctas{display:none!important}}

/* Carrusel del bloque «Muy pronto» (ON Saavedra I): renders y mapa */
.mp-car-s{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s}
.mp-car-s.on{opacity:1;visibility:visible}
.mp-car-s img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mp-car-s.mp-car-map img{object-position:center}
.mp-car-b{position:absolute;top:50%;margin-top:-24px;width:48px;height:48px;border:0;border-radius:0;background:#fff;color:#1C2B35;font-size:28px;line-height:1;cursor:pointer;z-index:4;display:flex;align-items:center;justify-content:center}
.mp-car-b:hover{background:#1C2B35;color:#fff}
.mp-car-b.prev{left:12px}.mp-car-b.next{right:12px}
.mp-car-n{position:absolute;right:12px;bottom:12px;z-index:4;background:#1C2B35;color:#fff;font-size:14px;font-weight:600;padding:8px 12px}
/* ON Saavedra I en un solo renglón; renders y axo completos, sin recortar */
.mp-pronto .mp-pronto-in h3{font-size:clamp(34px,3.4vw,54px)!important;white-space:nowrap;line-height:1.05}
@media (max-width:640px){.mp-pronto .mp-pronto-in h3{font-size:34px!important}}
.mp-car-s{background:#fff}
.mp-car-s:not(.mp-car-map) img{object-fit:contain}
/* La caja del carrusel tiene la medida de las imágenes (4:3): nada se recorta */
@media (min-width:641px){.mp-pronto-vis{aspect-ratio:4/3;min-height:0!important;align-self:center}}
