/* Portada · clases pd-home- de los módulos nativos (generador: wp/paginas/portada.py).
   Medidas y colores de maqueta/portada.html. Tokens --pd-* y .pd-btn en pd.css. */

/* ---------- comunes ---------- */
.pd-home-hero,.pd-home-ruta,.pd-home-sec{background:transparent}
.pd-home-sec.et_pb_section{padding:clamp(64px,8vw,104px) 0!important}
.pd-home-band-svc.et_pb_section{background:var(--pd-band-svc)!important}
.pd-home-band-proj.et_pb_section{background:var(--pd-band-proj)!important}
.pd-home-hero .et_pb_row,.pd-home-ruta .et_pb_row,.pd-home-sec .et_pb_row{padding:0!important}
.pd-home-sec .et_pb_row+.et_pb_row{margin-top:0}
.pd-home-sec .et_pb_text,.pd-home-hero .et_pb_text{font-size:17px;line-height:1.6;color:var(--pd-ink)}
.pd-home-sec .et_pb_module,.pd-home-hero .et_pb_module,.pd-home-ruta .et_pb_module{margin-bottom:0}
.pd-home-sec .et_pb_text p,.pd-home-hero .et_pb_text p,.pd-home-sec .et_pb_text h2,.pd-home-sec .et_pb_text h3{padding-bottom:0}
.pd-home-label{font:600 13px/1.3 var(--pd-body)!important;letter-spacing:.1em;text-transform:uppercase;color:var(--pd-plum)!important;margin:0}
.pd-home-tlink{color:var(--pd-plum)!important;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.pd-home-arr{display:inline-block;transition:transform .18s ease}
a:hover .pd-home-arr,a:focus-visible .pd-home-arr{transform:translateX(4px)}
.pd-home-stars{color:#E8A317;letter-spacing:2px}
.pd-home-vh,.pd-home-vh-mod{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0!important;padding:0!important}
.pd-home-ej{display:inline-block;font:600 10px/1 var(--pd-body);letter-spacing:.06em;text-transform:uppercase;color:var(--pd-ink-soft);border:1px dashed var(--pd-line);border-radius:4px;padding:3px 5px;vertical-align:middle;white-space:nowrap}

/* rejillas: la fila manda, las columnas de Divi pierden su ancho y su margen */
.et_pb_row.pd-home-grid{display:grid!important;gap:20px}
.et_pb_row.pd-home-grid::before,.et_pb_row.pd-home-grid::after{display:none!important}
.pd-home-grid>.et_pb_column,.pd-home-hero-row>.et_pb_column,.pd-home-people-row>.et_pb_column{width:auto!important;margin:0!important;float:none!important}

/* cabecera de sección */
.pd-home-head{margin-bottom:44px!important}
.pd-home-sh{max-width:640px}
.pd-home-sh h2,.pd-home-people h2{font:700 clamp(28px,3.1vw,40px)/1.15 var(--pd-body)!important;letter-spacing:-.025em;color:var(--pd-head)!important;margin-top:10px;text-wrap:balance}
.pd-home-sh p:not(.pd-home-label){margin-top:14px;color:var(--pd-ink-soft)}

/* ---------- 1 · héroe ---------- */
.pd-home-hero.et_pb_section{position:relative;isolation:isolate;overflow:hidden;padding:clamp(40px,6vw,80px) 0 clamp(56px,7vw,96px)!important}
.pd-home-hero::before,.pd-home-hero::after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);pointer-events:none}
.pd-home-hero::before{width:520px;height:520px;right:4%;top:-8%;background:rgba(96,37,116,.24);animation:pdHomeAura1 4.5s cubic-bezier(.2,.7,.2,1) both}
.pd-home-hero::after{width:440px;height:440px;right:26%;top:34%;background:rgba(207,0,127,.20);box-shadow:min(34vw,420px) 110px 0 -30px rgba(213,17,48,.18);animation:pdHomeAura2 4.5s cubic-bezier(.2,.7,.2,1) both}
@keyframes pdHomeAura1{to{transform:translate(-90px,70px) scale(1.12)}}
@keyframes pdHomeAura2{to{transform:translate(110px,-60px) scale(.9)}}
.et_pb_row.pd-home-hero-row{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:center}
.pd-home-hero-col{display:flex!important;flex-wrap:wrap;align-items:center;gap:14px 22px}
.pd-home-hero-col>.et_pb_module,.pd-home-hero-col>.et_pb_button_module_wrapper{margin:0!important}
.pd-home-hero-col>.et_pb_button_module_wrapper,.pd-home-hero-col>.pd-home-hero-link{margin-top:16px!important}
.pd-home-hero-col>.pd-home-proof{margin-top:12px!important}
.pd-home-hero-txt,.pd-home-proof{flex:0 0 100%}
.pd-home-hero .pd-home-kicker{font:600 15px/1.3 var(--pd-body)!important;letter-spacing:.1em;text-transform:uppercase;color:var(--pd-plum)!important;margin:0;padding:0}
.pd-home-big{font:400 clamp(42px,5.6vw,76px)/1 var(--pd-display)!important;letter-spacing:-.01em;color:var(--pd-head);margin:18px 0 0!important;text-wrap:balance}
.pd-home-big em{font-style:normal;color:var(--pd-magenta);position:relative;white-space:nowrap}
.pd-home-big em::after{content:"";position:absolute;left:0;right:0;bottom:-.04em;height:.07em;border-radius:99px;background:var(--pd-magenta);transform-origin:left;animation:pdHomeTrazo .5s .35s cubic-bezier(.2,.7,.2,1) both}
@keyframes pdHomeTrazo{from{transform:scaleX(0)}to{transform:none}}
.pd-home-lead{margin-top:22px!important;max-width:30em;font-size:19px;line-height:1.6;color:var(--pd-ink-soft)}
.pd-home-hero-link p{font-size:17px}
.pd-home-proof p{display:flex;align-items:center;gap:10px;font-size:15px;color:var(--pd-ink-soft)}
.pd-home-proof b{color:var(--pd-ink)}
.pd-home-hero-img{margin:0!important;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pd-home-hero-img .et_pb_image_wrap{display:block;width:100%}
.pd-home-hero-img img{display:block;width:100%!important;height:auto;border-radius:28px}

/* ---------- 2 · ruta ---------- */
.pd-home-ruta.et_pb_section{background:linear-gradient(180deg,transparent 50%,var(--pd-band-svc) 50%)!important;margin-top:-40px;position:relative;z-index:1;padding:0!important}
.et_pb_row.pd-home-ruta-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:var(--pd-card);border:1px solid var(--pd-line);border-radius:24px;box-shadow:var(--pd-shadow)}
.pd-home-ruta-col{position:relative;padding:24px 28px!important;display:flex!important;align-items:center}
.pd-home-ruta-col+.pd-home-ruta-col{border-left:1px solid var(--pd-line)}
.pd-home-ruta-col+.pd-home-ruta-col::before{content:"›";position:absolute;left:-15px;top:50%;margin-top:-15px;width:30px;height:30px;border-radius:50%;background:var(--pd-card);border:1px solid var(--pd-line);display:grid;place-items:center;color:var(--pd-magenta);font:700 18px/1 var(--pd-body);z-index:2}
.pd-home-paso.et_pb_blurb{width:100%}
.pd-home-paso .et_pb_blurb_content{display:flex;align-items:center;gap:16px;max-width:none;text-align:left}
.pd-home-paso .et_pb_main_blurb_image{flex:none;width:52px;height:52px;margin:0!important;border-radius:16px;background:var(--pd-band-svc);display:grid;place-items:center}
.pd-home-paso .et_pb_main_blurb_image .et_pb_image_wrap{display:grid!important;place-items:center;width:100%!important;height:100%!important;margin:0!important}
.pd-home-paso .et-pb-icon{font-size:24px!important;line-height:1!important;color:var(--pd-plum)!important;margin:0!important;display:block!important}
.pd-home-paso .et_pb_blurb_container{padding:0!important}
.pd-home-paso .et_pb_module_header{font:600 12px/1 var(--pd-body)!important;letter-spacing:.08em;text-transform:uppercase;color:var(--pd-magenta-text)!important;margin:0 0 6px!important;padding:0!important}
.pd-home-paso .et_pb_blurb_description p{font-weight:600;font-size:17px;line-height:1.3;color:var(--pd-head);padding:0;margin:0}

/* ---------- 3 · servicios ---------- */
.et_pb_row.pd-home-svcs{grid-template-columns:repeat(3,minmax(0,1fr))}
.pd-home-svc{position:relative;display:flex!important;flex-direction:column;gap:10px;padding:26px!important;border-radius:22px;background:var(--pd-card);border:1px solid var(--pd-line);transition:transform .2s,box-shadow .2s}
.pd-home-svc:hover,.pd-home-svc:focus-within{transform:translateY(-3px);box-shadow:var(--pd-shadow)}
.pd-home-svc-img{margin:0 0 8px!important;width:132px;max-width:132px}
.pd-home-svc-img img{display:block;width:132px;height:99px;object-fit:contain;transition:transform .28s cubic-bezier(.2,.7,.2,1)}
.pd-home-svc:hover .pd-home-svc-img img{transform:translateY(-3px)}
.pd-home-svc-txt{flex:1;display:flex;flex-direction:column}
.pd-home-svc-txt .et_pb_text_inner{display:flex;flex-direction:column;gap:10px;height:100%}
.pd-home-svc h3,.pd-home-case h3,.pd-home-pack h3{font:700 20px/1.25 var(--pd-body)!important;letter-spacing:-.015em;color:var(--pd-head)!important;margin:0;padding:0}
.pd-home-svc p{color:var(--pd-ink-soft);font-size:16px;margin:0}
.pd-home-svc .et_pb_text,.pd-home-svc .et_pb_text_inner,.pd-home-case .et_pb_text,.pd-home-case .et_pb_text_inner{position:static}
.pd-home-go{margin-top:auto!important;padding-top:8px!important;font-weight:600;font-size:15px}
.pd-home-go a{color:var(--pd-plum);text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;transition:background-size .18s ease}
.pd-home-go a::after{content:"";position:absolute;inset:0;border-radius:22px}
.pd-home-svc:hover .pd-home-go a,.pd-home-go a:focus-visible{background-size:100% 1.5px}

/* ---------- 4 · equipo ---------- */
.et_pb_row.pd-home-people-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:center}
.pd-home-intro{margin-top:16px!important;color:var(--pd-ink-soft);max-width:28em}
.pd-home-people ul.pd-home-faces{list-style:none;display:flex;flex-wrap:wrap;gap:18px;margin:28px 0 0;padding:0}
.pd-home-faces li{display:flex;flex-direction:column;align-items:center;gap:8px;width:104px;text-align:center;padding:0}
.pd-home-av{width:84px;height:84px;border-radius:50%;padding:3px;background:var(--pd-grad-btn)}
.pd-home-av span{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:var(--pd-paper-2);font:400 28px/1 var(--pd-display);color:var(--pd-plum)}
.pd-home-faces b{font-size:15px;line-height:1.2;color:var(--pd-ink)}
.pd-home-faces small{font-size:13px;color:var(--pd-ink-soft);line-height:1.3}
/* hueco de reseñas de Google (lo sustituirá el widget de Trustindex) */
.pd-home-gw{display:grid;gap:16px;padding:22px;border-radius:22px;border:1.5px dashed #B89AC7;background:var(--pd-card)}
.pd-home-gw p{margin:0}
.pd-home-gw-tag{font-size:13px;color:var(--pd-ink-soft)}
.pd-home-gw-head{display:flex;align-items:center;gap:14px}
.pd-home-gw-g{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--pd-paper-2);font:700 22px/1 var(--pd-body);color:#4285F4}
.pd-home-gw-head b{font-weight:700;color:var(--pd-head)}
.pd-home-gw-head small{display:block;font-size:14px;color:var(--pd-ink-soft)}
.pd-home-gw ul.pd-home-gw-cards{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:0;padding:0}
.pd-home-gw-cards li{height:106px;padding:0;border-radius:16px;background:
  radial-gradient(circle at 32px 32px,var(--pd-band-svc) 16px,transparent 16.5px),
  linear-gradient(var(--pd-line),var(--pd-line)) 16px 58px/calc(100% - 32px) 8px no-repeat,
  linear-gradient(var(--pd-line),var(--pd-line)) 16px 74px/calc(100% - 32px) 8px no-repeat,
  linear-gradient(var(--pd-line),var(--pd-line)) 16px 90px/60% 8px no-repeat,
  var(--pd-paper-2)}

/* ---------- 5 · proyectos ---------- */
.et_pb_row.pd-home-cases{grid-template-columns:repeat(3,minmax(0,1fr))}
.pd-home-case{position:relative;display:flex!important;flex-direction:column;border-radius:22px;overflow:hidden;background:var(--pd-card);border:1px solid var(--pd-line);transition:transform .2s,box-shadow .2s}
.pd-home-case:hover,.pd-home-case:focus-within{transform:translateY(-3px);box-shadow:var(--pd-shadow)}
.pd-home-shot{margin:0!important;aspect-ratio:2/1;overflow:hidden;border-bottom:1px solid var(--pd-line)}
.pd-home-shot .et_pb_image_wrap{display:block;height:100%}
.pd-home-shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.pd-home-case-txt{padding:20px 22px 24px}
.pd-home-case-txt .et_pb_text_inner{display:grid;gap:4px}
.pd-home-case h3 a{color:inherit;text-decoration:none}
.pd-home-case h3 a::after{content:"";position:absolute;inset:0}
.pd-home-case p{font-size:15px;color:var(--pd-ink-soft);margin:0}

/* ---------- 6 · precios ---------- */
.et_pb_row.pd-home-packs{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pd-home-pack{display:flex!important;flex-direction:column;padding:24px!important;border-radius:20px;background:var(--pd-card);border:1px solid var(--pd-line)}
.pd-home-pack-txt{flex:1;display:flex;flex-direction:column}
.pd-home-pack-txt .et_pb_text_inner{display:flex;flex-direction:column;gap:14px;height:100%}
.pd-home-pack p{margin:0}
.pd-home-price{display:flex;align-items:baseline;gap:6px}
.pd-home-price small{font-size:13px;color:var(--pd-ink-soft)}
.pd-home-price b{font:700 32px/1 var(--pd-body);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--pd-ink)}
.pd-home-annual{font-size:14px;color:var(--pd-ink-soft);margin-top:-6px!important}
.pd-home-pack ul{margin:0;padding:0 0 0 18px!important;display:grid;gap:6px;font-size:15px;color:var(--pd-ink-soft);list-style:disc}
.pd-home-pack ul li{padding:0}
.pd-home-pack ul li::marker{color:var(--pd-magenta)}
.pd-home-more{margin-top:auto!important;font-size:15px}
.pd-home-fx{height:0;overflow:hidden}

/* ---------- responsive ---------- */
@media (max-width:1020px){
  .et_pb_row.pd-home-svcs,.et_pb_row.pd-home-cases,.et_pb_row.pd-home-packs{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .et_pb_row.pd-home-hero-row,.et_pb_row.pd-home-people-row{grid-template-columns:minmax(0,1fr)}
  .et_pb_row.pd-home-ruta-row{grid-template-columns:minmax(0,1fr)}
  .pd-home-ruta-col+.pd-home-ruta-col{border-left:0;border-top:1px solid var(--pd-line)}
  .pd-home-ruta-col+.pd-home-ruta-col::before{left:42px;top:-15px;margin-top:0;transform:rotate(90deg)}
}
@media (max-width:560px){
  .pd-home-hero-col>.pd-home-hero-link{margin-top:0!important}
  .et_pb_row.pd-home-svcs,.et_pb_row.pd-home-cases,.et_pb_row.pd-home-packs{grid-template-columns:minmax(0,1fr)}
  .pd-home-hero::before{width:320px;height:320px}
  .pd-home-hero::after{width:280px;height:280px;box-shadow:120px 80px 0 -20px rgba(213,17,48,.18)}
}
@media (prefers-reduced-motion:reduce){
  .pd-home-hero::before,.pd-home-hero::after,.pd-home-big em::after{animation:none!important}
  .pd-home-svc,.pd-home-case,.pd-home-hero-img,.pd-home-arr,.pd-home-svc-img img{transition:none!important}
}
