/* =========================================================
   MI GUAU · LECTURA PREMIUM · V2
   Plantilla completa: Hero + Summary + Reading + Related
========================================================= */

.mgp-full-post,
.mgp-full-post *,
.mgp-full-post *::before,
.mgp-full-post *::after{
  box-sizing:border-box;
}

.mgp-full-post{
  --mgp-green:#173d2a;
  --mgp-green-2:#1b4a31;
  --mgp-dark:#14261b;
  --mgp-orange:#e86a33;
  --mgp-orange-2:#f47c3c;
  --mgp-cream:#f8f5ef;
  --mgp-paper:#fffaf2;
  --mgp-ink:#171713;
  --mgp-muted:#625d55;

  width:100%;
  max-width:100%;
  overflow:clip;
  background:
    radial-gradient(circle at 85% 14%,rgba(232,106,51,.055),transparent 25%),
    #f8f5ef;
}

/* =====================================================
   HERO DEFINITIVO · SPLIT EDITORIAL
===================================================== */

.mgp-hero{
  width:100%;
  padding:112px 24px 54px;
  background:
    radial-gradient(circle at 16% 8%,rgba(232,106,51,.14),transparent 27%),
    radial-gradient(circle at 92% 28%,rgba(255,255,255,.07),transparent 23%),
    linear-gradient(135deg,#13261b 0%,#173d2a 60%,#1c442f 100%);
  position:relative;
  overflow:hidden;
}

.mgp-hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:90px;
  background:linear-gradient(180deg,transparent,#f8f5ef);
  pointer-events:none;
}

.mgp-hero__inner{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(430px,.92fr);
  gap:58px;
  align-items:center;
  position:relative;
  z-index:2;
}

.mgp-hero__copy{
  min-width:0;
  padding:24px 0 58px;
}

.mgp-hero__topline{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:22px;
}

.mgp-hero__category{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:#e86a33;
  color:#fff;
  font:950 10px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.8px;
  text-transform:uppercase;
  box-shadow:0 12px 30px rgba(232,106,51,.22);
}

.mgp-hero__time{
  color:rgba(255,255,255,.68);
  font:750 12px/1.2 "DM Sans",Arial,sans-serif;
}

.mgp-hero h1{
  max-width:720px;
  margin:0 0 23px!important;
  color:#fff!important;
  font-family:"DM Serif Display",Georgia,serif!important;
  font-size:clamp(48px,5.2vw,74px)!important;
  line-height:.95!important;
  letter-spacing:-2.2px!important;
  text-wrap:balance;
}

.mgp-hero__excerpt{
  max-width:650px;
  margin:0 0 24px!important;
  color:rgba(255,255,255,.78)!important;
  font:500 17px/1.62 "DM Sans",Arial,sans-serif!important;
}

.mgp-hero__meta{
  display:flex;
  align-items:center;
  gap:9px;
  color:rgba(255,255,255,.55);
  font:750 11px/1 "DM Sans",Arial,sans-serif;
}

.mgp-hero__media{
  position:relative;
  min-width:0;
  aspect-ratio:4/5;
  max-height:610px;
  overflow:hidden;
  border-radius:42px 42px 42px 130px;
  background:#d9d0c4;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 38px 110px rgba(0,0,0,.27);
}

.mgp-hero__media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(12,25,17,.45));
  pointer-events:none;
}

.mgp-hero__image{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  transform:none!important;
}

.mgp-hero__placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#eadfce,#f8eee0);
  font-size:78px;
}

.mgp-hero__media-tag{
  position:absolute;
  left:22px;
  right:22px;
  bottom:20px;
  z-index:3;
  padding:15px 17px;
  border-radius:20px;
  background:rgba(18,33,24,.72);
  border:1px solid rgba(255,255,255,.13);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.mgp-hero__media-tag span{
  display:block;
  margin-bottom:4px;
  color:#ff9b6b;
  font:900 9px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.7px;
  text-transform:uppercase;
}

.mgp-hero__media-tag strong{
  color:#fff;
  font:750 13px/1.3 "DM Sans",Arial,sans-serif;
}

/* =====================================================
   SUMMARY
===================================================== */

.mgp-summary{
  width:min(1120px,calc(100% - 48px));
  margin:-18px auto 50px;
  position:relative;
  z-index:20;
  padding:22px;
  border-radius:32px;
  background:
    radial-gradient(circle at top left,rgba(232,106,51,.08),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.97),rgba(255,250,242,.99));
  border:1px solid rgba(30,30,30,.07);
  box-shadow:0 22px 62px rgba(30,24,18,.09);
}

.mgp-summary__badge{
  width:max-content;
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:16px;
  padding:7px 13px 7px 9px;
  border-radius:999px;
  background:#1b2319;
  color:#f47c3c;
  font:950 10px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.7px;
}

.mgp-summary__badge span{
  width:23px;
  height:23px;
  border-radius:50%;
  background:#e86a33;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
}

.mgp-summary__grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}

.mgp-summary__item{
  padding:17px;
  min-height:116px;
  border-radius:22px;
  background:#f8f5ef;
  display:grid;
  grid-template-columns:40px 1fr;
  gap:12px;
}

.mgp-summary__icon{
  width:38px;
  height:38px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#e86a33;
  font-weight:900;
}

.mgp-summary__item strong{
  display:block;
  color:#171713;
  font:400 22px/1.05 "DM Serif Display",Georgia,serif;
  margin-bottom:5px;
}

.mgp-summary__item p{
  margin:0!important;
  color:#625d55!important;
  font:550 12.5px/1.45 "DM Sans",Arial,sans-serif!important;
}

/* =====================================================
   READING LAYOUT
===================================================== */

.mgp-reading-shell{
  position:relative;
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  display:grid;
  grid-template-columns:240px minmax(0,820px);
  justify-content:center;
  gap:56px;
  padding:14px 0 72px;
}

.mgp-reading-progress{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:4px;
  z-index:999999;
  pointer-events:none;
  background:rgba(232,106,51,.12);
}

.mgp-reading-progress span{
  display:block;
  width:100%;
  height:100%;
  transform:scaleX(0);
  transform-origin:left center;
  background:linear-gradient(90deg,#f47c3c,#ffd166);
  will-change:transform;
}

.admin-bar .mgp-reading-progress{top:32px}
@media(max-width:782px){.admin-bar .mgp-reading-progress{top:46px}}

.mgp-reading-rail{min-width:0}

.mgp-rail-card{
  position:sticky;
  top:118px;
  padding:22px;
  border-radius:28px;
  background:linear-gradient(180deg,#fff,#fffaf2);
  border:1px solid rgba(23,61,42,.08);
  box-shadow:0 20px 60px rgba(31,27,22,.08);
}

.mgp-rail-eyebrow{
  display:block;
  margin-bottom:14px;
  color:#e86a33;
  font:900 10px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.8px;
  text-transform:uppercase;
}

.mgp-toc{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.mgp-toc a{
  display:block;
  padding:9px 10px;
  border-radius:12px;
  color:#4f514c;
  text-decoration:none!important;
  font:700 12px/1.35 "DM Sans",Arial,sans-serif;
  transition:.2s ease;
}

.mgp-toc a:hover,
.mgp-toc a.is-active{
  background:#f4efe6;
  color:#173d2a;
}

.mgp-toc a.is-active{
  box-shadow:inset 3px 0 0 #e86a33;
}

.mgp-rail-share{
  display:flex;
  align-items:center;
  gap:7px;
  padding-top:18px;
  margin-top:16px;
  border-top:1px solid rgba(23,61,42,.08);
}

.mgp-rail-share>span{
  margin-right:auto;
  font:800 10px/1 "DM Sans",Arial,sans-serif;
  color:#747068;
  text-transform:uppercase;
  letter-spacing:1px;
}

.mgp-rail-share button{
  width:34px;
  height:34px;
  border-radius:999px;
  border:1px solid rgba(23,61,42,.08);
  background:#fff;
  color:#173d2a;
  cursor:pointer;
  font:900 11px/1 "DM Sans",Arial,sans-serif;
}

.mgp-article{
  min-width:0;
  width:100%;
  max-width:820px;
}

.mgp-article-intro{
  margin:0 0 30px;
  padding:22px 24px;
  border-radius:24px;
  background:
    radial-gradient(circle at top left,rgba(232,106,51,.08),transparent 40%),
    #fff;
  border:1px solid rgba(23,61,42,.07);
}

.mgp-article-intro span{
  display:block;
  color:#e86a33;
  font:900 10px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.8px;
  text-transform:uppercase;
  margin-bottom:7px;
}

.mgp-article-intro p{
  margin:0!important;
  color:#56534d!important;
  font:650 14px/1.55 "DM Sans",Arial,sans-serif!important;
}

.mgp-post-content{
  color:#393a35;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:18px;
  line-height:1.82;
}

.mgp-post-content>*{max-width:100%}

.mgp-post-content p{
  margin:0 0 24px!important;
  color:#44433f!important;
  font:500 18px/1.82 "DM Sans",Arial,sans-serif!important;
}

.mgp-post-content>p:first-of-type{
  position:relative;
  padding:25px 26px 25px 30px;
  margin-bottom:40px!important;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(23,61,42,.07);
  box-shadow:0 18px 55px rgba(31,27,22,.065);
  color:#2f302c!important;
  font-size:19px!important;
  line-height:1.72!important;
}

.mgp-post-content>p:first-of-type::before{
  content:"🐾";
  position:absolute;
  left:-18px;
  top:-18px;
  width:44px;
  height:44px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#e86a33;
  color:#fff;
  box-shadow:0 12px 30px rgba(232,106,51,.25);
  font-size:18px;
}

.mgp-post-content h2{
  scroll-margin-top:130px;
  position:relative;
  margin:58px 0 22px!important;
  padding-left:22px;
  color:#171713!important;
  font-family:"DM Serif Display",Georgia,serif!important;
  font-size:clamp(36px,4vw,52px)!important;
  line-height:1.02!important;
  letter-spacing:-1.4px!important;
}

.mgp-post-content h2::before{
  content:"";
  position:absolute;
  left:0;
  top:.12em;
  width:5px;
  height:.82em;
  border-radius:999px;
  background:#e86a33;
}

.mgp-post-content h3{
  margin:38px 0 15px!important;
  color:#20231f!important;
  font-family:"DM Serif Display",Georgia,serif!important;
  font-size:31px!important;
  line-height:1.08!important;
}

.mgp-post-content h4{
  margin:30px 0 12px!important;
  color:#173d2a!important;
  font:850 19px/1.3 "DM Sans",Arial,sans-serif!important;
}

.mgp-post-content strong{
  color:#252722;
  font-weight:850;
}

.mgp-post-content a{
  color:#e86a33;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.mgp-post-content ul,
.mgp-post-content ol{
  margin:20px 0 30px!important;
  padding:22px 26px 22px 48px!important;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(23,61,42,.065);
  box-shadow:0 16px 45px rgba(31,27,22,.05);
}

.mgp-post-content li{
  margin:8px 0;
  padding-left:3px;
}

.mgp-post-content li::marker{color:#e86a33}

.mgp-post-content blockquote{
  position:relative;
  margin:36px 0!important;
  padding:26px 28px 26px 32px!important;
  border:0!important;
  border-radius:26px;
  background:linear-gradient(135deg,#173d2a,#1b4a31);
  color:#fff!important;
  box-shadow:0 24px 70px rgba(23,61,42,.18);
}

.mgp-post-content blockquote p{
  color:#fff!important;
  margin:0!important;
  font-family:"DM Serif Display",Georgia,serif!important;
  font-size:25px!important;
  line-height:1.35!important;
}

.mgp-post-content img,
.mgp-post-content video,
.mgp-post-content iframe{
  max-width:100%!important;
  height:auto;
  border-radius:24px;
}

.mgp-post-content table,
.mgp-post-content pre{
  max-width:100%;
  overflow-x:auto;
}

/* =====================================================
   IMÁGENES EDITORIALES
===================================================== */

.mgp-editorial-image{
  margin:30px 0 46px!important;
}

.mgp-editorial-image__img{
  display:block;
  width:100%!important;
  aspect-ratio:16/10;
  object-fit:cover;
  object-position:center;
  border-radius:30px!important;
  box-shadow:0 22px 65px rgba(31,27,22,.11);
}

.mgp-editorial-image figcaption{
  margin-top:10px;
  color:#7a756d;
  font:600 12px/1.5 "DM Sans",Arial,sans-serif;
}

/* =====================================================
   CTA
===================================================== */

.mgp-editorial-cta{
  margin:54px 0 26px;
  padding:30px;
  border-radius:30px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:24px;
  background:
    radial-gradient(circle at top right,rgba(232,106,51,.22),transparent 38%),
    linear-gradient(135deg,#14261b,#1b3b28);
  color:#fff;
  box-shadow:0 26px 75px rgba(20,38,27,.18);
}

.mgp-editorial-cta__copy>span{
  display:block;
  margin-bottom:8px;
  color:#ff9a68;
  font:900 10px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.8px;
  text-transform:uppercase;
}

.mgp-editorial-cta h3{
  margin:0 0 8px!important;
  color:#fff!important;
  font:400 32px/1.04 "DM Serif Display",Georgia,serif!important;
}

.mgp-editorial-cta p{
  margin:0!important;
  color:rgba(255,255,255,.78)!important;
  font:550 14px/1.55 "DM Sans",Arial,sans-serif!important;
}

.mgp-editorial-cta>a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 20px;
  border-radius:999px;
  background:#fff;
  color:#173d2a!important;
  text-decoration:none!important;
  font:900 13px/1 "DM Sans",Arial,sans-serif;
  white-space:nowrap;
}

/* =====================================================
   SHARE FINAL
===================================================== */

.mgp-share-block{
  margin:28px 0 0;
  padding:24px 26px;
  border-radius:28px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:20px;
  background:
    radial-gradient(circle at top left,rgba(232,106,51,.12),transparent 38%),
    #fffaf2;
  border:1px solid rgba(23,61,42,.07);
}

.mgp-share-block>div>span{
  display:block;
  margin-bottom:6px;
  color:#e86a33;
  font:900 10px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.7px;
  text-transform:uppercase;
}

.mgp-share-block p{
  margin:0!important;
  color:#5d5952!important;
  font:650 14px/1.5 "DM Sans",Arial,sans-serif!important;
}

.mgp-share-actions{
  display:flex;
  gap:8px;
}

.mgp-share-actions button{
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(23,61,42,.08);
  background:#fff;
  color:#173d2a;
  cursor:pointer;
  font:850 12px/1 "DM Sans",Arial,sans-serif;
}

.mgp-share-actions button:first-child{
  background:#173d2a;
  border-color:#173d2a;
  color:#fff;
}

/* =====================================================
   RELATED · LOOP CONTINUO
===================================================== */

.mgp-related{
  --mgp-gap:18px;
  width:min(1120px,calc(100% - 48px));
  margin:10px auto 64px;
  position:relative;
  overflow:hidden;
}

.mgp-related__head{
  margin-bottom:22px;
}

.mgp-related__head>span{
  display:block;
  color:#e86a33;
  font:900 10px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.9px;
  text-transform:uppercase;
  margin-bottom:9px;
}

.mgp-related__head h2{
  margin:0 0 9px!important;
  color:#171713!important;
  font:400 clamp(34px,4vw,50px)/1 "DM Serif Display",Georgia,serif!important;
}

.mgp-related__head p{
  margin:0!important;
  color:#625d55!important;
  font:550 15px/1.55 "DM Sans",Arial,sans-serif!important;
}

.mgp-related__viewport{
  width:100%;
  overflow:hidden;
}

.mgp-related__track{
  display:flex;
  gap:var(--mgp-gap);
  width:max-content;
  will-change:transform;
}

.mgp-related-card{
  flex:0 0 276px;
  width:276px;
  overflow:hidden;
  border-radius:26px;
  background:#fffaf2;
  border:1px solid rgba(23,61,42,.07);
  text-decoration:none!important;
  box-shadow:0 16px 46px rgba(31,27,22,.07);
}

.mgp-related-card__image{
  position:relative;
  height:178px;
  overflow:hidden;
  background:#eee5d8;
}

.mgp-related-card__image img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}

.mgp-related-card__image span{
  position:absolute;
  left:12px;
  top:12px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(20,38,27,.9);
  color:#ff8a50;
  font:900 9px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1px;
  text-transform:uppercase;
}

.mgp-related-card__body{
  min-height:190px;
  padding:18px;
  display:flex;
  flex-direction:column;
}

.mgp-related-card__body small{
  color:#e86a33;
  font:900 9px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.4px;
  text-transform:uppercase;
  margin-bottom:9px;
}

.mgp-related-card__body h3{
  margin:0 0 14px!important;
  color:#171713!important;
  font:400 23px/1.02 "DM Serif Display",Georgia,serif!important;
}

.mgp-related-card__body strong{
  margin-top:auto;
  color:#173d2a;
  font:900 12px/1 "DM Sans",Arial,sans-serif;
}

/* =====================================================
   TABLET
===================================================== */

@media(max-width:1024px){

  .mgp-hero{
    padding-top:104px;
  }

  .mgp-hero__inner{
    grid-template-columns:minmax(0,1fr) minmax(350px,.85fr);
    gap:36px;
  }

  .mgp-hero h1{
    font-size:clamp(44px,6vw,62px)!important;
  }

  .mgp-hero__media{
    max-height:530px;
  }

  .mgp-reading-shell{
    width:min(900px,calc(100% - 40px));
    grid-template-columns:1fr;
    padding-top:22px;
  }

  .mgp-reading-rail{display:none}

  .mgp-article{
    margin:0 auto;
    width:100%;
  }
}

/* =====================================================
   MOBILE
===================================================== */

@media(max-width:767px){

  .mgp-hero{
    padding:82px 0 0;
    background:#f8f5ef;
  }

  .mgp-hero::after{
    display:none;
  }

  .mgp-hero__inner{
    width:100%;
    display:flex;
    flex-direction:column-reverse;
    gap:0;
  }

  .mgp-hero__media{
    width:calc(100% - 24px);
    margin:0 auto;
    max-height:none;
    aspect-ratio:16/11;
    border-radius:26px;
    box-shadow:0 20px 55px rgba(31,27,22,.13);
    border:0;
  }

  .mgp-hero__media::after{
    background:linear-gradient(180deg,transparent 70%,rgba(12,25,17,.26));
  }

  .mgp-hero__media-tag{
    left:12px;
    right:12px;
    bottom:12px;
    padding:12px 13px;
    border-radius:16px;
  }

  .mgp-hero__media-tag strong{
    font-size:11px;
  }

  .mgp-hero__copy{
    width:calc(100% - 24px);
    margin:0 auto;
    padding:24px 0 34px;
  }

  .mgp-hero__topline{
    margin-bottom:16px;
  }

  .mgp-hero__category{
    min-height:30px;
    padding:0 12px;
    font-size:9px;
    letter-spacing:1.5px;
  }

  .mgp-hero__time{
    color:#817a70;
    font-size:11px;
  }

  .mgp-hero h1{
    max-width:none;
    margin-bottom:16px!important;
    color:#171713!important;
    font-size:clamp(35px,10.5vw,46px)!important;
    line-height:.98!important;
    letter-spacing:-1.4px!important;
  }

  .mgp-hero__excerpt{
    max-width:none;
    margin-bottom:18px!important;
    color:#625d55!important;
    font-size:15px!important;
    line-height:1.55!important;
  }

  .mgp-hero__meta{
    color:#8a837a;
  }

  .mgp-summary{
    width:calc(100% - 24px);
    margin:0 auto 34px;
    padding:13px;
    border-radius:23px;
  }

  .mgp-summary__grid{
    display:flex;
    overflow-x:auto;
    gap:10px;
    scrollbar-width:none;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
  }

  .mgp-summary__grid::-webkit-scrollbar{
    display:none;
  }

  .mgp-summary__item{
    flex:0 0 82%;
    min-width:82%;
    scroll-snap-align:start;
  }

  .mgp-reading-shell{
    width:calc(100% - 24px);
    padding:12px 0 48px;
  }

  .mgp-article-intro{
    padding:18px;
    border-radius:20px;
    margin-bottom:24px;
  }

  .mgp-post-content{
    font-size:16px;
    line-height:1.72;
  }

  .mgp-post-content p{
    font-size:16px!important;
    line-height:1.72!important;
    margin-bottom:21px!important;
  }

  .mgp-post-content>p:first-of-type{
    padding:42px 18px 20px;
    border-radius:22px;
    font-size:16.5px!important;
  }

  .mgp-post-content>p:first-of-type::before{
    left:16px;
    top:-18px;
  }

  .mgp-post-content h2{
    margin:46px 0 18px!important;
    padding-left:16px;
    font-size:34px!important;
    letter-spacing:-.8px!important;
  }

  .mgp-post-content h2::before{
    width:4px;
  }

  .mgp-post-content h3{
    font-size:27px!important;
    margin-top:32px!important;
  }

  .mgp-post-content ul,
  .mgp-post-content ol{
    padding:18px 18px 18px 38px!important;
    border-radius:20px;
  }

  .mgp-editorial-image{
    margin:24px 0 34px!important;
  }

  .mgp-editorial-image__img{
    aspect-ratio:4/3;
    border-radius:22px!important;
  }

  .mgp-post-content blockquote{
    padding:22px!important;
    border-radius:22px;
  }

  .mgp-post-content blockquote p{
    font-size:22px!important;
  }

  .mgp-editorial-cta{
    grid-template-columns:1fr;
    padding:24px;
    border-radius:24px;
  }

  .mgp-editorial-cta h3{
    font-size:29px!important;
  }

  .mgp-editorial-cta>a{
    width:max-content;
  }

  .mgp-share-block{
    grid-template-columns:1fr;
    padding:20px;
    border-radius:22px;
  }

  .mgp-share-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .mgp-share-actions button:last-child{
    grid-column:1/-1;
  }

  .mgp-related{
    width:calc(100% - 24px);
    margin:4px auto 48px;
  }

  .mgp-related-card{
    flex-basis:82vw;
    width:82vw;
  }

  .mgp-related-card__image{
    height:205px;
  }
}

/* =====================================================
   REDUCED MOTION
===================================================== */

@media(prefers-reduced-motion:reduce){
  .mgp-related__track,
  .mgp-toc a{
    transition:none!important;
  }
}


/* =====================================================
   V2.1 · HERO REFINADO + SHARE FLOTANTE
===================================================== */

/* HERO DESKTOP: imagen más horizontal/compacta y menos recorte */
@media(min-width:1025px){
  .mgp-hero{
    padding-top:108px;
    padding-bottom:46px;
  }

  .mgp-hero__inner{
    grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
    gap:48px;
  }

  .mgp-hero__copy{
    padding:18px 0 54px;
  }

  .mgp-hero h1{
    max-width:760px;
    font-size:clamp(46px,4.65vw,68px)!important;
    line-height:.97!important;
  }

  .mgp-hero__media{
    aspect-ratio:5/4;
    max-height:500px;
    border-radius:36px 36px 36px 96px;
  }

  .mgp-hero__image{
    object-position:center center!important;
  }
}

/* ICONOS SVG */
.mgp-share-icon svg,
.mgp-floating-share__btn svg,
.mgp-share-action svg{
  width:18px;
  height:18px;
  display:block;
  flex:0 0 auto;
}

.mgp-share-icon--whatsapp,
.mgp-floating-share__btn--whatsapp{
  color:#fff!important;
  background:#173d2a!important;
  border-color:#173d2a!important;
}

.mgp-share-icon--facebook,
.mgp-floating-share__btn--facebook{
  color:#173d2a!important;
  background:#fff!important;
}

.mgp-share-icon--copy,
.mgp-floating-share__btn--copy{
  color:#e86a33!important;
}

/* SHARE FLOTANTE DESKTOP */
.mgp-floating-share{
  position:fixed;
  left:max(18px,calc(50vw - 715px));
  top:50%;
  transform:translateY(-50%) translateX(-8px);
  z-index:99980;

  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;

  padding:11px 9px;
  border-radius:999px;

  background:rgba(255,250,242,.9);
  border:1px solid rgba(23,61,42,.08);
  box-shadow:0 18px 52px rgba(30,24,18,.14);

  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);

  opacity:0;
  visibility:hidden;
  pointer-events:none;

  transition:opacity .25s ease,transform .25s ease,visibility .25s ease;
}

.mgp-floating-share.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(-50%) translateX(0);
}

.mgp-floating-share__label{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  margin-bottom:3px;
  color:#7a7065;
  font:900 9px/1 "DM Sans",Arial,sans-serif;
  letter-spacing:1.45px;
  text-transform:uppercase;
}

.mgp-floating-share__btn{
  width:40px;
  height:40px;
  padding:0;
  border-radius:999px;
  border:1px solid rgba(23,61,42,.08);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(31,27,22,.07);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}

.mgp-floating-share__btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(31,27,22,.12);
}

/* SHARE FINAL */
.mgp-share-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}

.mgp-share-action--whatsapp{
  background:#173d2a!important;
  border-color:#173d2a!important;
  color:#fff!important;
}

.mgp-share-action--facebook{
  background:#fff!important;
  color:#173d2a!important;
}

.mgp-share-action--copy{
  background:#fff!important;
  color:#173d2a!important;
}

/* MOBILE HERO: foto protagonista + tarjeta editorial flotante debajo */
@media(max-width:767px){
  .mgp-hero{
    padding:72px 0 0!important;
    background:
      radial-gradient(circle at 86% 5%,rgba(232,106,51,.09),transparent 28%),
      #f8f5ef!important;
  }

  .mgp-hero__inner{
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
    width:100%!important;
  }

  .mgp-hero__media{
    order:1;
    width:calc(100% - 20px)!important;
    margin:0 auto!important;
    aspect-ratio:16/10!important;
    border-radius:24px!important;
    overflow:hidden!important;
    box-shadow:0 18px 48px rgba(31,27,22,.13)!important;
  }

  .mgp-hero__media-tag{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    padding:10px 12px!important;
    border-radius:14px!important;
  }

  .mgp-hero__media-tag span{
    font-size:8px!important;
  }

  .mgp-hero__media-tag strong{
    font-size:10.5px!important;
  }

  .mgp-hero__copy{
    order:2;
    position:relative;
    z-index:4;

    width:calc(100% - 28px)!important;
    margin:-22px auto 0!important;
    padding:25px 18px 24px!important;

    border-radius:26px!important;

    background:
      radial-gradient(circle at 92% 10%,rgba(232,106,51,.08),transparent 30%),
      rgba(255,255,255,.97)!important;

    border:1px solid rgba(23,61,42,.07)!important;
    box-shadow:0 18px 52px rgba(31,27,22,.10)!important;
  }

  .mgp-hero__topline{
    margin-bottom:14px!important;
  }

  .mgp-hero__category{
    min-height:29px!important;
    padding:0 11px!important;
    font-size:8.5px!important;
  }

  .mgp-hero__time{
    color:#7e776e!important;
    font-size:10.5px!important;
  }

  .mgp-hero h1{
    margin-bottom:14px!important;
    color:#171713!important;
    font-size:clamp(31px,9.6vw,40px)!important;
    line-height:1!important;
    letter-spacing:-1.15px!important;
  }

  .mgp-hero__excerpt{
    margin-bottom:16px!important;
    color:#625d55!important;
    font-size:14.5px!important;
    line-height:1.52!important;
  }

  .mgp-hero__meta{
    color:#8a837a!important;
    font-size:10.5px!important;
  }

  .mgp-summary{
    margin:18px auto 34px!important;
  }

  /* Share flotante mobile: cápsula inferior que acompaña la lectura */
  .mgp-floating-share{
    left:50%!important;
    top:auto!important;
    bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;

    transform:translateX(-50%) translateY(12px)!important;

    width:auto!important;
    max-width:calc(100vw - 24px)!important;

    flex-direction:row!important;
    gap:7px!important;

    padding:7px 8px 7px 12px!important;
    border-radius:999px!important;
  }

  .mgp-floating-share.is-visible{
    transform:translateX(-50%) translateY(0)!important;
  }

  .mgp-floating-share__label{
    writing-mode:horizontal-tb!important;
    transform:none!important;
    margin:0 3px 0 0!important;
    font-size:9px!important;
    letter-spacing:1.1px!important;
  }

  .mgp-floating-share__btn{
    width:37px!important;
    height:37px!important;
  }

  .mgp-floating-share__btn svg{
    width:17px!important;
    height:17px!important;
  }

  /* El share es fixed y se oculta antes del footer: no reservamos
     espacio extra en el body porque dejaba una franja blanca al final. */
  body.single-post{
    padding-bottom:0!important;
  }
}

/* En tablet no dejamos dos shares compitiendo */
@media(min-width:768px) and (max-width:1180px){
  .mgp-floating-share{
    display:none!important;
  }
}

@media(max-width:380px){
  .mgp-hero__copy{
    width:calc(100% - 20px)!important;
    padding:22px 15px 21px!important;
  }

  .mgp-hero h1{
    font-size:30px!important;
  }

  .mgp-floating-share__label{
    display:none!important;
  }
}


/* =====================================================
   V2.2 · HERO CON MÁS FOTO + SHARE MÁS CLARO
===================================================== */

/* ---------- DESKTOP: mostrar bastante más de la foto ---------- */
@media(min-width:1025px){

  .mgp-hero{
    padding-top:106px!important;
    padding-bottom:48px!important;
  }

  .mgp-hero__inner{
    grid-template-columns:minmax(0,.98fr) minmax(520px,1.08fr)!important;
    gap:46px!important;
    align-items:center!important;
  }

  .mgp-hero__copy{
    padding:16px 0 48px!important;
  }

  .mgp-hero h1{
    max-width:760px!important;
    font-size:clamp(44px,4.45vw,66px)!important;
    line-height:.97!important;
  }

  /*
   * La foto original es horizontal.
   * Cambiamos el marco desde 5:4 a 16:10 para reducir muchísimo
   * el recorte superior/inferior y enseñar más escena.
   */
  .mgp-hero__media{
    width:100%!important;
    aspect-ratio:16/10!important;
    max-height:520px!important;
    border-radius:36px 36px 36px 88px!important;
    background:#e7ded3!important;
  }

  .mgp-hero__image{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
  }

  .mgp-hero__media-tag{
    left:22px!important;
    right:22px!important;
    bottom:18px!important;
  }
}

/* ---------- MOBILE: foto protagonista, sin taparla ---------- */
@media(max-width:767px){

  .mgp-hero{
    padding-top:72px!important;
  }

  .mgp-hero__inner{
    display:flex!important;
    flex-direction:column!important;
  }

  .mgp-hero__media{
    order:1!important;
    width:calc(100% - 20px)!important;
    margin:0 auto!important;

    /*
     * Marco más cercano a la foto original y sin tarjeta encima.
     * object-fit: contain prioriza mostrar la fotografía completa.
     */
    aspect-ratio:16/10!important;
    max-height:none!important;
    border-radius:24px!important;
    background:#e9e0d5!important;
    overflow:hidden!important;
  }

  .mgp-hero__image{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    background:transparent!important;
  }

  /* En mobile quitamos la etiqueta que estaba tapando la parte baja de la foto */
  .mgp-hero__media-tag{
    display:none!important;
  }

  /*
   * La tarjeta de texto ya no invade la foto.
   * Se mantiene editorial, pero dejamos respirar la imagen completa.
   */
  .mgp-hero__copy{
    order:2!important;
    width:calc(100% - 24px)!important;
    margin:12px auto 0!important;
    padding:24px 18px 25px!important;
    border-radius:26px!important;

    background:
      radial-gradient(circle at 92% 10%,rgba(232,106,51,.075),transparent 30%),
      rgba(255,255,255,.98)!important;

    border:1px solid rgba(23,61,42,.07)!important;
    box-shadow:0 16px 44px rgba(31,27,22,.085)!important;
  }

  .mgp-hero h1{
    font-size:clamp(31px,9.35vw,39px)!important;
    line-height:1.01!important;
    letter-spacing:-1.05px!important;
  }

  .mgp-hero__excerpt{
    font-size:14.5px!important;
    line-height:1.52!important;
  }

  .mgp-summary{
    margin:18px auto 34px!important;
  }

  /* ---------- SHARE MOBILE ---------- */

  .mgp-floating-share{
    /*
     * Visible como una acción editorial, no como contacto de soporte.
     */
    max-width:calc(100vw - 20px)!important;
    padding:7px 8px 7px 13px!important;
    gap:7px!important;
  }

  .mgp-floating-share__label{
    display:block!important;
    writing-mode:horizontal-tb!important;
    transform:none!important;
    margin:0 3px 0 0!important;

    color:#5f594f!important;
    font-family:"DM Sans",Arial,sans-serif!important;
    font-size:9px!important;
    font-weight:950!important;
    line-height:1.05!important;
    letter-spacing:.7px!important;
    text-transform:uppercase!important;

    max-width:74px!important;
    white-space:normal!important;
    text-align:center!important;
  }

  .mgp-floating-share__btn{
    width:38px!important;
    height:38px!important;
    flex:0 0 38px!important;
  }

  .mgp-floating-share__btn--whatsapp{
    background:#173d2a!important;
    color:#fff!important;
  }

  .mgp-floating-share__btn--facebook{
    background:#fff!important;
    color:#173d2a!important;
  }

  .mgp-floating-share__btn--copy{
    background:#fff!important;
    color:#e86a33!important;
  }
}

@media(max-width:380px){

  .mgp-hero__media{
    width:calc(100% - 16px)!important;
  }

  .mgp-hero__copy{
    width:calc(100% - 18px)!important;
  }

  .mgp-floating-share{
    padding-left:9px!important;
  }

  .mgp-floating-share__label{
    max-width:58px!important;
    font-size:8px!important;
  }

  .mgp-floating-share__btn{
    width:36px!important;
    height:36px!important;
    flex-basis:36px!important;
  }
}
\n\n/* =====================================================\n   V2.3.3 · FOOTER MOBILE / SAFE AREA\n   Evita que navegadores iPhone y webviews (por ejemplo,\n   enlaces abiertos desde apps) oculten la franja final del footer.\n===================================================== */\n@media(max-width:767px){\n  body.single-post .elementor-location-footer{\n    position:relative!important;\n    z-index:5!important;\n  }\n\n  /* El espacio se agrega DENTRO del último contenedor oscuro\n     del footer, no al body, para no recrear la franja blanca. */\n  body.single-post .elementor-location-footer > .elementor-element:last-child,\n  body.single-post .elementor-location-footer > .e-con:last-child,\n  body.single-post .elementor-location-footer .elementor-section-wrap > .elementor-element:last-child{\n    padding-bottom:calc(26px + env(safe-area-inset-bottom, 0px))!important;\n  }\n}\n