/* Landing de propietarios (/propietarios/, /en/landlords/). Solo se carga en esas páginas. */
.pl-hero{position:relative;color:#fff;background:#1A1916 var(--ph-sm) center/cover no-repeat;padding:calc(var(--nav-h) + 40px) 0 56px}
@media(min-width:769px){.pl-hero{background-image:var(--ph-lg)}}
.pl-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,25,22,.78) 0%,rgba(26,25,22,.62) 45%,rgba(26,25,22,.9) 100%)}
.pl-hero>.container{position:relative}
.pl-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.pl-hero .section-label{color:var(--gold-light)}
.pl-h1{font-family:var(--font-display);font-weight:700;font-size:clamp(2rem,4.2vw,3.2rem);line-height:1.12;margin:4px 0 16px;text-wrap:balance}
.pl-sub{font-size:1.12rem;color:rgba(255,255,255,.86);max-width:34em;margin-bottom:22px}
.pl-pts{list-style:none;display:grid;gap:10px;margin-bottom:28px}
.pl-pts li{display:flex;gap:10px;align-items:center;font-size:.98rem;color:rgba(255,255,255,.92)}
.pl-pts .lic{width:20px;height:20px;color:var(--gold);flex-shrink:0;stroke-width:2}
.pl-hero-cta{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.pl-hero .btn-primary:hover{border-color:#fff}
.pl-est{color:var(--gold-light);font-size:.92rem;text-decoration:underline;text-underline-offset:3px}
/* tarjeta del formulario */
.pl-card{background:#fff;color:var(--primary);border-radius:var(--r-md);padding:30px 28px;box-shadow:var(--sh-lg);scroll-margin-top:calc(var(--nav-h) + 12px)}
.pl-ftitle{font-family:var(--font-display);font-size:1.45rem;font-weight:700;line-height:1.2;margin-bottom:4px}
.pl-fsub{color:var(--secondary);font-size:.9rem;margin-bottom:18px}
.pl-gest{border:0;margin:0 0 16px;padding:0}
.pl-gest legend{font-size:.82rem;font-weight:600;color:var(--secondary);margin-bottom:8px}
.pl-opts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.pl-opt{position:relative;cursor:pointer}
.pl-opt input{position:absolute;opacity:0;width:1px;height:1px}
.pl-opt span{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px;padding:8px 6px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);font-size:.86rem;font-weight:600;line-height:1.25;transition:all .2s ease}
.pl-opt input:checked+span{border-color:var(--gold);background:var(--gold-pale);color:var(--primary);box-shadow:inset 0 0 0 1px var(--gold)}
.pl-opt input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.pl-gest.pl-bad .pl-opt span{border-color:#E07070}
.pl-form .form-row{margin-bottom:12px}
.pl-tel{display:grid;grid-template-columns:118px 1fr;gap:12px;margin-bottom:14px}
.pl-form select{cursor:pointer}
.pl-form .pl-bad-f{border-color:#E07070!important}
.pl-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pl-form .form-privacy{margin-bottom:14px}
.pl-msg{font-size:.86rem;color:#B04040;margin:-4px 0 12px}
.pl-submit{font-size:1rem;padding:16px 14px;gap:10px;white-space:nowrap}
.pl-submit[disabled]{opacity:.7;cursor:wait}
.pl-ok{text-align:center;padding:14px 2px 4px;outline:none}
.pl-ok-btns{display:grid;gap:10px;margin-top:4px}
.pl-cal-btn{gap:10px;justify-content:center}
.pl-cal-btn .lic{width:20px;height:20px;stroke-width:1.8}
.pl-ok>.lic{width:48px;height:48px;color:#2D7A4F;margin:0 auto 12px;stroke-width:1.6}
.pl-ok p{color:var(--secondary);margin-bottom:16px}
.pl-ok .pl-ftitle{color:var(--primary);margin-bottom:8px}
/* servicios */
.pl-sec .section-label,.pl-sec .section-title{display:block;text-align:center}
.pl-srvs{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:40px}
.pl-srv{background:#fff;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--sh-sm);display:flex;flex-direction:column}
.pl-srv-img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;background:var(--bg-alt)}
.pl-srv-body{padding:0 32px 34px}
.pl-srv-ico{position:relative;display:inline-flex;width:60px;height:60px;align-items:center;justify-content:center;border-radius:50%;background:var(--gold-pale);color:var(--gold);margin:-30px 0 14px;border:4px solid #fff;box-shadow:var(--sh-sm)}
.pl-srv-ico .lic{width:28px;height:28px}
.pl-srv h3{font-family:var(--font-display);font-size:1.45rem;margin-bottom:8px}
.pl-srv p{color:var(--secondary);margin-bottom:16px}
.pl-srv .ll-list{list-style:none;display:grid;gap:8px}
.pl-srv .ll-list li{display:flex;gap:10px;align-items:center}
.pl-srv .ll-list .lic{width:18px;height:18px;color:var(--gold);flex-shrink:0;stroke-width:2}
/* cómo funciona */
.pl-how{background:var(--bg-alt)}
.pl-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px;counter-reset:none}
.pl-step{position:relative;background:#fff;border-radius:var(--r-md);padding:30px 26px;border:1px solid var(--border)}
.pl-num{position:absolute;top:18px;right:22px;font-family:var(--font-display);font-size:2.4rem;font-weight:700;color:var(--gold-pale);line-height:1}
.pl-step-ico{display:inline-flex;color:var(--gold);margin-bottom:12px}
.pl-step-ico .lic{width:30px;height:30px}
.pl-step h3{font-size:1.08rem;margin-bottom:6px}
.pl-step p{color:var(--secondary);font-size:.95rem}
/* cierre */
.pl-end-in{text-align:center;max-width:720px}
.pl-end-in>p{color:var(--secondary);margin:-8px 0 26px}
.pl-end-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
/* barra fija en móvil: dorada y maciza a todo el ancho; encima del aviso de cookies (--ck-h) y WhatsApp sube por encima de ella */
.pl-bar{position:fixed;left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(14px + max(var(--ck-h,0px),env(safe-area-inset-bottom,0px)));z-index:890;transform:translateY(calc(100% + 40px + var(--ck-h,0px) + env(safe-area-inset-bottom,0px)));visibility:hidden;transition:transform .3s ease,visibility 0s linear .3s,bottom .3s ease}
.pl-bar.on{transform:none;visibility:visible;transition:transform .3s ease,visibility 0s,bottom .3s ease}
.pl-bar .btn,.pl-bar .btn:hover,.pl-bar .btn:focus,.pl-bar .btn:active{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:10px;font-size:.95rem;background:var(--gold);border:2px solid var(--gold);color:var(--white);opacity:1;animation:none;box-shadow:0 8px 24px rgba(26,25,22,.28)}
@media(max-width:900px){body.has-pl-bar{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}body.has-pl-bar .whatsapp-fab{bottom:calc(78px + max(var(--ck-h,0px),env(safe-area-inset-bottom,0px)))}}
@media(min-width:901px){.pl-bar{display:none}}
@media(max-width:900px){
  .pl-hero{padding:calc(var(--nav-h) + 4px) 0 32px}
  .pl-hero-grid{grid-template-columns:1fr;gap:28px}
  .pl-srvs,.pl-steps{grid-template-columns:1fr;gap:16px;margin-top:28px}
}
@media(max-width:560px){
  .pl-h1{font-size:1.95rem}
  .pl-sub{font-size:1.02rem;margin-bottom:18px}
  .pl-pts{margin-bottom:22px}
  .pl-hero-cta .btn{width:100%;justify-content:center}
  .pl-card{padding:24px 18px;margin:0 -8px}
  .pl-form .form-row{grid-template-columns:1fr;gap:12px}
  .pl-tel{grid-template-columns:122px 1fr;gap:10px}
  .pl-submit{font-size:.95rem}
  .pl-opt span{font-size:.8rem;min-height:52px}
  .pl-srv-body{padding:0 22px 26px}
  .pl-end-btns .btn{width:100%;justify-content:center}
}
.pl-cal-btn[hidden],.pl-ok [hidden]{display:none!important}

/* ventana modal del calendario */
html{scrollbar-gutter:stable}
html.pl-lock,html.pl-lock body{overflow:hidden}
.pl-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:3vh 3vw;background:rgba(26,25,22,.62);animation:plFade .18s ease}
.pl-modal[hidden]{display:none}
.pl-modal-box{position:relative;width:min(560px,94vw);max-height:90vh;display:flex;flex-direction:column;background:#fff;border-radius:var(--r-md);box-shadow:var(--sh-lg);overflow:hidden}
.pl-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 12px 20px;border-bottom:1px solid var(--border)}
.pl-modal-t{font-family:var(--font-display);font-weight:700;font-size:1.15rem;margin:0}
.pl-modal-x{flex-shrink:0;width:40px;height:40px;border:0;border-radius:50%;background:var(--bg-alt);color:var(--primary);font-size:1.6rem;line-height:1;cursor:pointer}
.pl-modal-x:hover,.pl-modal-x:focus-visible{background:var(--gold-pale);outline:2px solid var(--gold);outline-offset:1px}
.pl-modal-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}
.pl-modal-body iframe{display:block;width:100%;height:760px;min-height:600px;border:0;background:#fff}
@keyframes plFade{from{opacity:0}to{opacity:1}}
@media(max-width:600px){
  .pl-modal{padding:0;align-items:stretch}
  .pl-modal-box{width:100vw;max-height:none;height:100%;border-radius:0}
}
