/* DRONES MÉXICO V2.10 — estilos exclusivos de Nuestra empresa.
   Orden original conservado: presentación, perfil y ajustes particulares. */

/* Presentación exclusiva de Nuestra empresa. */
.dm-company-intro { padding-block: clamp(48px, 6vw, 84px); }
.dm-company-intro > .dm-company-intro__layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr); gap:clamp(36px,5vw,72px); align-items:center; }
.dm-company-intro .dm-company-intro__eyebrow { margin:0 0 18px; color:#2878bd; font-size:12px; font-weight:700; line-height:1.5; letter-spacing:.11em; }
.dm-company-intro h2 { margin:0 0 22px; color:#18324A; font-size:var(--dm-type-h2-section); font-weight:400; line-height:1.22; max-width:680px; }
.dm-company-intro .dm-company-intro__description { margin:0; color:#36444F; font-size:17px; line-height:1.8; }
.dm-company-intro__services { display:flex; flex-wrap:wrap; gap:10px; padding:0; margin:26px 0 30px; list-style:none; }
.dm-company-intro__services li { padding:7px 13px; border:1px solid #dce5ed; border-radius:4px; background:#F3F6F9; color:#18324A; font-size:13px; font-weight:600; line-height:1.4; }
.dm-company-intro__actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px 24px; }
.dm-company-intro .dm-company-intro__cta { margin:0; gap:20px; padding:13px 21px; }
.dm-company-intro__more { display:inline-flex; align-items:center; gap:12px; color:#2878bd; font-size:14px; font-weight:600; text-decoration:none; }
.dm-company-intro__more:hover { text-decoration:underline; }
.dm-company-intro__more:focus-visible { outline:3px solid #F4AD30; outline-offset:5px; }
.dm-company-intro__credentials { padding:30px; border-radius:10px; border-top:4px solid #F4AD30; background:linear-gradient(145deg,#18324A,#234761); color:white; box-shadow:0 18px 38px rgba(24,50,74,.13); }
.dm-company-intro .dm-company-intro__panel-label { margin:0 0 26px; color:#F4AD30; font-size:11px; font-weight:700; letter-spacing:.09em; line-height:1.6; }
.dm-company-intro__experience { display:flex; align-items:center; gap:22px; padding-bottom:27px; }
.dm-company-intro .dm-company-intro__number { margin:0; color:#fff; font-size:68px; line-height:1; font-weight:700; letter-spacing:-.05em; white-space:nowrap; }
.dm-company-intro__number > span:first-child { color:#F4AD30; font-size:32px; vertical-align:top; }
.dm-company-intro__credentials h3 { margin:0 0 6px; color:#fff; font-size:18px; font-weight:600; line-height:1.35; }
.dm-company-intro__credentials p:not(.dm-company-intro__number):not(.dm-company-intro__panel-label) { margin:0; color:#dbe5ed; font-size:14px; line-height:1.6; }
.dm-company-intro__proof { display:flex; align-items:flex-start; gap:16px; border-top:1px solid rgba(255,255,255,.16); padding-top:22px; }
.dm-company-intro__proof + .dm-company-intro__proof { margin-top:22px; }
.dm-company-intro__proof svg { width:28px; height:28px; flex:0 0 28px; color:#F4AD30; margin-top:2px; }
.dm-company-intro__sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:991px) {
  .dm-company-intro > .dm-company-intro__layout { grid-template-columns:1fr; gap:34px; }
  .dm-company-intro__credentials { max-width:600px; width:100%; }
}
@media(max-width:600px) {
  .dm-company-intro__credentials { padding:24px; }
  .dm-company-intro .dm-company-intro__description { font-size:16px; }
  .dm-company-intro__experience { gap:18px; }
  .dm-company-intro .dm-company-intro__number { font-size:60px; }
  .dm-company-intro__actions { align-items:flex-start; flex-direction:column; }
}


/* H2 homologados con la escala de secciones de la portada. */
.dm-main.dm-secondary h2 {
  font-size: var(--dm-type-h2-section) !important;
  font-weight: 400;
  line-height: 1.25;
}

.dm-company-profile__heading { text-align:center; margin-bottom:48px; }
.dm-company-profile h3 { color:#18324A; font-size:25px; line-height:1.3; font-weight:500; margin:0 0 20px; }
.dm-company-profile p { color:#36444F; margin:0 0 18px; }
.dm-company-profile .dm-company-profile__label { color:#2878bd; font-size:11px; font-weight:700; letter-spacing:.12em; margin:0 0 12px; }
.dm-company-profile__overview { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); align-items:center; gap:48px; }
.dm-company-profile__image { margin:0; }
.dm-company-profile__image img { display:block; width:100%; max-width:380px; height:auto; border-radius:6px; margin-inline:auto; }
.dm-company-profile__image figcaption { text-align:center; color:#627689; font-size:12px; line-height:1.6; margin-top:10px; }
.dm-company-profile__services { background:#F3F6F9; border:1px solid #e1e8ee; border-radius:8px; padding:32px; margin-top:42px; }
.dm-company-profile__services ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:42px; margin:0; padding:0; list-style:none; }
.dm-company-profile__services li { position:relative; border-bottom:1px solid #dce5ed; padding:15px 0 15px 26px; color:#36444F; font-size:15px; line-height:1.65; }
.dm-company-profile__services li::before { content:"✓"; position:absolute; left:0; top:15px; color:#2878bd; font-weight:700; }
.dm-company-profile__experience { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.6fr); gap:42px; align-items:start; padding-block:48px; border-bottom:1px solid #dce5ed; }
.dm-company-profile__experience-heading { background:linear-gradient(145deg,#18324A,#234761); padding:30px; border-radius:8px; border-top:3px solid #F4AD30; }
.dm-company-profile__experience-heading h3 { color:white; }
.dm-company-profile__experience-heading .dm-company-profile__label { color:#F4AD30; }
.dm-company-profile .dm-company-profile__stat { color:white; font-size:30px; font-weight:600; line-height:1.3; margin:26px 0 0; }
.dm-company-profile__stat span { display:block; color:#dbe5ed; font-size:14px; font-weight:400; margin-top:8px; }
.dm-company-profile__why { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.6fr); gap:42px; padding-top:48px; }
.dm-company-profile__why .dm-company-profile__image { margin-top:28px; }
.dm-company-profile__reasons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
.dm-company-profile__reasons p { margin:0; padding:0 0 0 16px; border-left:2px solid #dce5ed; font-size:15px; line-height:1.75; }

@media(max-width:991px) {
 .dm-company-profile__overview,.dm-company-profile__experience,.dm-company-profile__why { grid-template-columns:1fr; gap:28px; }
 .dm-company-profile__experience-heading { max-width:480px; }
 .dm-company-profile__why .dm-company-profile__image { max-width:380px; }
}
@media(max-width:600px) {
 .dm-company-profile__services { padding:24px; }
 .dm-company-profile__services ul,.dm-company-profile__reasons { grid-template-columns:1fr; }
 .dm-company-profile__heading { margin-bottom:32px; }
 .dm-company-profile__experience,.dm-company-profile__why { padding-top:36px; }
 .dm-company-profile h3 { font-size:23px; }
}



/* Logotipo corporativo: reemplaza su atributo style original. */
.dm-secondary #nuestra-empresa .logo-empresa {
  display: block;
  width: 600px;
  max-width: 100%;
  height: auto;
  max-height: none;
  margin: 0 auto 24px;
}

/* V2.13: mensaje completo de la direccion dentro del perfil corporativo. */
.dm-company-profile .dm-director-message {
  margin-top: 48px;
  padding: clamp(24px, 4vw, 44px);
  border: 1px solid #dce5ed;
  border-left: 4px solid #F4AD30;
  border-radius: 8px;
  background: #F3F6F9;
  text-align: left;
}
.dm-company-profile .dm-director-message__eyebrow {
  margin: 0 0 12px;
  color: #2878bd;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
}
.dm-company-profile .dm-director-message h3 { margin: 0 0 24px; }
.dm-director-message__body { max-width: 920px; }
.dm-company-profile .dm-director-message__body p {
  margin: 0 0 18px;
  color: #36444F;
  font-size: 16px;
  line-height: 1.8;
}
.dm-company-profile .dm-director-message__body p:last-child { margin-bottom: 0; }
.dm-director-message__signature {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid #dce5ed;
}
.dm-company-profile .dm-director-message__name {
  margin: 0 0 4px;
  color: #18324A;
  font-size: 17px;
  font-weight: 700;
}
.dm-company-profile .dm-director-message__role {
  margin: 0;
  color: #627689;
  font-size: 13px;
}
@media (max-width: 600px) {
  .dm-company-profile .dm-director-message { margin-top: 36px; }
}

/* V2.14: trabajos recientes, cuatro tarjetas en dos columnas. */
.dm-main .dm-recent-work { background: #F3F6F9; padding-block: clamp(44px, 5vw, 72px); }
.dm-recent-work .dm-section-title { margin: 0 0 36px; }
.dm-recent-work__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; max-width: 760px; margin: 0 auto; padding: 0; list-style: none; }
.dm-recent-work__card { display: flex; flex-direction: column; min-width: 0; margin: 0; overflow: hidden; background: #fff; border: 1px solid #dce5ed; border-radius: 8px; }
.dm-recent-work .dm-recent-work__image { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.dm-recent-work__copy { flex: 1; padding: 15px 16px 17px; text-align: left; }
.dm-recent-work .dm-recent-work__category { margin: 0 0 7px; color: #2878bd; font-size: 9px; line-height: 1.5; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.dm-recent-work .dm-recent-work__copy h3 { margin: 0; color: #18324A; font-size: 15px; font-weight: 500; line-height: 1.4; }
.dm-recent-work__actions { display: flex; justify-content: center; margin-top: 20px; }
.dm-recent-work .dm-recent-work__button { display: inline-flex; align-items: center; justify-content: center; gap: 16px; margin: 0; padding: 13px 24px; border: 1px solid #2878bd; border-radius: 4px; background: #2878bd; color: #fff; text-decoration: none; }
.dm-recent-work .dm-recent-work__button:hover { background: #1f639d; border-color: #1f639d; }
.dm-recent-work .dm-recent-work__button:focus-visible { outline: 3px solid #F4AD30; outline-offset: 4px; }
@media (max-width: 600px) {
  .dm-recent-work__grid { grid-template-columns: 1fr; gap: 22px; }
  .dm-recent-work__copy { padding: 15px 16px 17px; }
  .dm-recent-work .dm-recent-work__copy h3 { font-size: 15px; }
}


/* V2.15: partner tecnológico CRBT Robots Móviles. */
.dm-alliance-card--crbt .dm-alliance-card__logo {
  display:block;
  width:150px;
  max-width:100%;
  height:120px;
  object-fit:contain;
  margin:0 auto 22px;
}
.dm-alliance-card--crbt h5 { min-height:2.8em; }
.dm-alliance-card--crbt p { text-align:left; }
.dm-alliance-card--crbt a { color:#2878bd; font-weight:600; }

/* V2.16: alianza estratégica Aerovant. */
.dm-alliance-card--aerovant .dm-alliance-card__logo-frame {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:80px;
  margin:0 auto 22px;
  padding:14px 18px;
  border-radius:8px;
}
.dm-alliance-card--aerovant .dm-alliance-card__logo-frame--dark { background:#10263D; }
.dm-alliance-card--aerovant .dm-alliance-card__logo { display:block; width:240px; max-width:100%; height:auto; object-fit:contain; margin:0; }
.dm-alliance-card--aerovant h5 { min-height:2.8em; }
.dm-alliance-card--aerovant p { text-align:left; }
.dm-alliance-card--aerovant a { color:#2878bd; font-weight:600; }
